
/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */
/* WARNING: Type propagation algorithm not settling */
/* WARNING: Enum "DT": Some values do not have unique names */
/* DWARF original prototype: void do_layout(Sized_relobj_file<64,_false> * this, Symbol_table *
   symtab, Layout * layout, Read_symbols_data * sd) */

void __thiscall
gold::Sized_relobj_file<64,_false>::do_layout
          (Sized_relobj_file<64,_false> *this,Symbol_table *symtab,Layout *layout,
          Read_symbols_data *sd)

{
  _Rb_tree_header *p_Var1;
  _Base_ptr *pp_Var2;
  byte bVar3;
  bool bVar4;
  Sized_relobj_file<64,_false> *pSVar5;
  uint uVar6;
  Plugin_manager *pPVar7;
  Elf_Word EVar8;
  Input_file *this_00;
  iterator __position;
  pointer pDVar9;
  Compressed_section_map *pCVar10;
  undefined4 uVar11;
  int iVar12;
  Garbage_collection *pGVar13;
  int *piVar14;
  pointer puVar15;
  pointer pDVar16;
  pointer ppOVar17;
  pointer puVar18;
  uint *puVar19;
  File_view *pFVar20;
  code *pcVar21;
  pointer pcVar22;
  uint3 uVar23;
  bool bVar24;
  bool bVar25;
  bool bVar26;
  Parameters *pPVar27;
  char *pcVar28;
  bool bVar29;
  difference_type __d;
  undefined4 *puVar30;
  undefined4 *puVar31;
  undefined4 *puVar32;
  size_t sVar33;
  General_options *pGVar34;
  _Base_ptr p_Var35;
  _func_int_varargs *p_Var36;
  __node_base *p_Var37;
  _func_int_varargs **pp_Var38;
  undefined4 uVar39;
  pointer pDVar40;
  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
  *paVar41;
  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
  *paVar42;
  Relocatable_relocs *pRVar43;
  Output_section *pOVar44;
  uchar *puVar45;
  vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *pvVar46;
  pointer ppRVar47;
  byte bVar48;
  Shdr SVar49;
  Sized_relobj_file<64,_false> *extraout_ECX;
  int iVar50;
  Sized_relobj_file<64,_false> *pSVar51;
  Sized_relobj_file<64,_false> *extraout_ECX_00;
  _Base_ptr p_Var52;
  _Base_ptr p_Var53;
  Sized_relobj_file<64,_false> *extraout_ECX_01;
  Sized_relobj_file<64,_false> *extraout_ECX_02;
  Sized_relobj_file<64,_false> *extraout_ECX_03;
  Sized_relobj_file<64,_false> *extraout_ECX_04;
  Sized_relobj_file<64,_false> *extraout_ECX_05;
  Sized_relobj_file<64,_false> *extraout_ECX_06;
  Sized_relobj_file<64,_false> *extraout_ECX_07;
  Sized_relobj_file<64,_false> *extraout_ECX_08;
  Sized_relobj_file<64,_false> *extraout_ECX_09;
  Sized_relobj_file<64,_false> *extraout_ECX_10;
  Sized_relobj_file<64,_false> *extraout_ECX_11;
  Sized_relobj_file<64,_false> *extraout_ECX_12;
  Sized_relobj_file<64,_false> *extraout_ECX_13;
  Sized_relobj_file<64,_false> *extraout_ECX_14;
  Sized_relobj_file<64,_false> *extraout_ECX_15;
  Sized_relobj_file<64,_false> *extraout_ECX_16;
  Sized_relobj_file<64,_false> *extraout_ECX_17;
  Sized_relobj_file<64,_false> *extraout_ECX_18;
  Sized_relobj_file<64,_false> *extraout_ECX_19;
  Sized_relobj_file<64,_false> *extraout_ECX_20;
  Sized_relobj_file<64,_false> *extraout_ECX_21;
  Sized_relobj_file<64,_false> *extraout_ECX_22;
  Sized_relobj_file<64,_false> *extraout_ECX_23;
  Sized_relobj_file<64,_false> *extraout_ECX_24;
  Sized_relobj_file<64,_false> *extraout_ECX_25;
  Sized_relobj_file<64,_false> *extraout_ECX_26;
  Sized_relobj_file<64,_false> *extraout_ECX_27;
  Sized_relobj_file<64,_false> *extraout_ECX_28;
  Sized_relobj_file<64,_false> *extraout_ECX_29;
  Sized_relobj_file<64,_false> *extraout_ECX_30;
  Sized_relobj_file<64,_false> *extraout_ECX_31;
  pointer ppOVar54;
  pointer pDVar55;
  uchar *puVar56;
  undefined **ppuVar57;
  pointer puVar58;
  undefined1 *puVar59;
  undefined4 *puVar60;
  int *piVar61;
  int *piVar62;
  uint uVar63;
  Incremental_inputs *pIVar64;
  byte *pbVar65;
  _Base_ptr p_Var66;
  Shdr_data<64> *pSVar67;
  pointer ppRVar68;
  uint uVar69;
  byte *pbVar70;
  byte *pbVar71;
  byte *pbVar72;
  _Base_ptr p_Var73;
  pointer pDVar74;
  bool bVar75;
  bool bVar76;
  byte bVar77;
  undefined1 auStack_1f0 [52];
  Symbols_data *in_stack_fffffe48;
  Object *in_stack_fffffe54;
  Symbols_data *local_190;
  section_size_type local_188;
  File_view *local_180;
  section_size_type local_17c;
  _Base_ptr local_174;
  uint local_170;
  uint local_16c;
  uint local_168;
  File_view *local_164;
  uchar *local_160;
  undefined4 local_154;
  undefined4 local_150;
  uint local_148;
  uchar *local_144;
  uint local_140;
  bool local_137;
  Shdr_data<64> *local_134;
  uint *local_12c;
  Sized_relobj_file<64,_false> *local_124;
  undefined **local_120;
  int *local_11c;
  undefined4 local_118;
  int local_110;
  char local_10c [4];
  undefined4 local_108;
  _Base_ptr local_100 [3];
  undefined1 local_f1;
  uint i;
  Shdr shdr;
  off_t *local_e8;
  _Base_ptr local_e4;
  vector<unsigned_int,_std::allocator<unsigned_int>_> reloc_sections;
  vector<unsigned_int,_std::allocator<unsigned_int>_> eh_frame_sections;
  vector<unsigned_int,_std::allocator<unsigned_int>_> debug_info_sections;
  vector<unsigned_int,_std::allocator<unsigned_int>_> debug_types_sections;
  vector<bool,_std::allocator<bool>_> omit;
  Shdr shdr_2;
  undefined1 local_94 [16];
  off_t offset;
  undefined4 local_6c;
  undefined4 local_68;
  undefined4 local_64;
  Input_file *local_60;
  Sized_relobj_file<64,_false> *local_5c;
  undefined4 local_58;
  uint local_54;
  undefined4 local_50;
  Xindex *local_4c;
  Compressed_section_map *local_48;
  pointer local_44;
  pointer local_40;
  pointer local_3c;
  vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *local_38;
  Object_merge_map *local_34;
  undefined4 local_30;
  Read_relocs_data *local_2c;
  Symbols_data *local_28;
  uint *local_24;
  
  bVar77 = 0;
  if (parameters->target_ == (Target *)0x0) {
                    /* WARNING: Subroutine does not return */
    do_gold_unreachable("../../gold/parameters.h",0x69,"target");
  }
  pGVar34 = parameters->options_;
  pSVar5 = *(Sized_relobj_file<64,_false> **)(*(int *)(parameters->target_ + 4) + 0x60);
  uVar6 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;
  if (pGVar34 == (General_options *)0x0) goto LAB_000a34ee;
  if ((pGVar34->gc_sections_).value == false) {
    if (pGVar34->icf_status_ == ICF_NONE) {
      if (layout->unique_segment_for_sections_specified_ == false) {
        if (uVar6 == 0) {
          return;
        }
        local_148 = sd->section_names_size;
        local_160 = sd->section_headers->data_;
        local_164 = sd->symbols;
        if (local_164 != (File_view *)0x0) {
          local_164 = (File_view *)local_164->data_;
        }
        local_17c = sd->symbols_size;
        local_180 = sd->symbol_names;
        if (local_180 != (File_view *)0x0) {
          local_180 = (File_view *)local_180->data_;
        }
        bVar25 = false;
        bVar24 = false;
        local_190 = (Symbols_data *)0x0;
        local_188 = sd->symbol_names_size;
        local_144 = sd->section_names->data_;
        bVar26 = false;
        goto LAB_000a1e71;
      }
      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;
      if (local_190 != (Symbols_data *)0x0) goto LAB_000a1e0a;
    }
    else {
      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;
      if (local_190 != (Symbols_data *)0x0) goto LAB_000a33a4;
    }
LAB_000a3448:
    if (sd == (Read_symbols_data *)0x0) {
                    /* WARNING: Subroutine does not return */
      do_gold_unreachable("../../gold/object.cc",0x597,"do_layout");
    }
    if (uVar6 == 0) {
      return;
    }
    local_190 = (Symbols_data *)operator_new(0x20);
    in_stack_fffffe48 = local_190;
    Relobj::copy_symbols_data((Relobj *)this,local_190,sd,uVar6 << 6);
    local_160 = local_190->section_headers_data;
    (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = local_190;
    local_148 = local_190->section_names_size;
    local_164 = (File_view *)local_190->symbols_data;
    local_17c = local_190->symbols_size;
    local_180 = (File_view *)local_190->symbol_names_data;
    pGVar34 = parameters->options_;
    local_188 = local_190->symbol_names_size;
    local_144 = local_190->section_names_data;
    if (pGVar34 == (General_options *)0x0) {
LAB_000a34ee:
                    /* WARNING: Subroutine does not return */
      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");
    }
    bVar25 = true;
    bVar24 = false;
    bVar26 = true;
  }
  else {
    local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;
    if (local_190 == (Symbols_data *)0x0) goto LAB_000a3448;
    if (symtab->gc_->is_worklist_ready_ == false) {
                    /* WARNING: Subroutine does not return */
      do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout");
    }
    if (pGVar34->icf_status_ != ICF_NONE) {
LAB_000a33a4:
      if (symtab->icf_->icf_ready_ == false) {
                    /* WARNING: Subroutine does not return */
        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");
      }
    }
LAB_000a1e0a:
    if (uVar6 == 0) {
      return;
    }
    bVar25 = true;
    bVar24 = true;
    local_160 = local_190->section_headers_data;
    local_148 = local_190->section_names_size;
    bVar26 = false;
    local_164 = (File_view *)local_190->symbols_data;
    local_17c = local_190->symbols_size;
    local_180 = (File_view *)local_190->symbol_names_data;
    local_188 = local_190->symbol_names_size;
    local_144 = local_190->section_names_data;
  }
LAB_000a1e71:
  local_120 = &_GLOBAL_OFFSET_TABLE_;
  pPVar7 = pGVar34->plugins_;
  bVar3 = 0;
  if ((pPVar7 != (Plugin_manager *)0x0) && (bVar3 = pPVar7->any_claimed_, (bool)bVar3 != false)) {
    bVar3 = pPVar7->in_replacement_phase_ ^ 1;
  }
  if (0x3fffffff < uVar6) {
                    /* WARNING: Subroutine does not return */
    std::__throw_bad_alloc();
  }
  puVar30 = (undefined4 *)operator_new(uVar6 * 4);
  puVar32 = puVar30;
  if (uVar6 != 0) {
    do {
      *puVar32 = 0;
      puVar32 = puVar32 + 1;
    } while (puVar32 != puVar30 + uVar6);
  }
                    /* try { // try from 000a1efd to 000a1f01 has its CatchHandler @ 000a4675 */
  puVar31 = (undefined4 *)operator_new(uVar6 * 4);
  piVar62 = (int *)&stack0xfffffe54;
  puVar59 = &stack0xfffffe54;
  local_134 = (Shdr_data<64> *)(local_160 + 0x40);
  puVar32 = puVar31;
  if (uVar6 != 0) {
    do {
      *puVar32 = 0;
      puVar32 = puVar32 + 1;
    } while (puVar32 != puVar31 + uVar6);
    if (uVar6 != 1) {
      uVar69 = 1;
      local_140 = 0;
      pSVar67 = local_134;
      do {
        while( true ) {
          if (bVar3 != 0) {
            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);
          }
          EVar8 = pSVar67->sh_type;
          if ((EVar8 == 9) || (EVar8 == 4)) break;
LAB_000a1f88:
          uVar69 = uVar69 + 1;
          pSVar67 = pSVar67 + 1;
          if (uVar69 == uVar6) goto LAB_000a2028;
        }
        uVar63 = pSVar67->sh_info;
        if (0xfeff < uVar63) {
                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */
          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);
          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;
        }
        if ((uVar63 == 0) || (uVar6 <= uVar63)) {
          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");
          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);
          goto LAB_000a1f88;
        }
        puVar19 = puVar30 + uVar63;
        if (*puVar19 == 0) {
          *puVar19 = uVar69;
          puVar31[uVar63] = EVar8;
          goto LAB_000a1f88;
        }
        *puVar19 = 0xffffffff;
        uVar69 = uVar69 + 1;
        pSVar67 = pSVar67 + 1;
      } while (uVar69 != uVar6);
      goto LAB_000a2028;
    }
  }
  local_140 = 0;
LAB_000a2028:
  if (!bVar24) {
    ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
               _M_impl._M_finish;
    ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
               _M_impl._M_start;
    uVar69 = (int)ppOVar17 - (int)ppOVar54 >> 2;
    if (uVar69 < uVar6) {
      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);
      std::vector<gold::Output_section*,_std::allocator<gold::Output_section*>_>::_M_default_append
                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,
                 (size_type)in_stack_fffffe48);
    }
    else if ((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)) {
      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.
      _M_finish = ppOVar54;
    }
    puVar15 = (this->super_Sized_relobj<64,_false>).section_offsets_.
              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.
              _M_impl._M_finish;
    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.
              _M_impl._M_start;
    uVar69 = (int)puVar15 - (int)puVar18 >> 3;
    if (uVar69 < uVar6) {
      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);
                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */
      std::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>::
      _M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,
                        (size_type)in_stack_fffffe48);
    }
    else if ((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)) {
      (this->super_Sized_relobj<64,_false>).section_offsets_.
      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.
      _M_finish = puVar18;
    }
  }
  this_00 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.input_file_;
  if (this_00 == (Input_file *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */
    Object::input_file(in_stack_fffffe54);
  }
                    /* try { // try from 000a204d to 000a2051 has its CatchHandler @ 000a46c7 */
  local_137 = Input_file::just_symbols(this_00);
  if (local_137) {
    piVar62 = (int *)&stack0xfffffe54;
    if (!bVar24) {
      pFVar20 = sd->section_headers;
      if (pFVar20 != (File_view *)0x0) {
        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);
        in_stack_fffffe48 = (Symbols_data *)0xc;
        operator_delete(pFVar20,0xc);
      }
      pFVar20 = sd->section_names;
      sd->section_headers = (File_view *)0x0;
      if (pFVar20 != (File_view *)0x0) {
        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);
        operator_delete(pFVar20,0xc);
      }
      sd->section_names = (File_view *)0x0;
      piVar62 = (int *)&stack0xfffffe54;
    }
  }
  else {
    if (local_140 != 0) {
      if (parameters->options_ == (General_options *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */
        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");
      }
      pPVar7 = parameters->options_->plugins_;
      shdr.p_ = (Shdr_data<64> *)this;
      __position._M_current =
           (pPVar7->deferred_layout_objects_).
           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish;
      if (__position._M_current ==
          (pPVar7->deferred_layout_objects_).
          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.
          _M_end_of_storage) {
                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */
        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::
        _M_realloc_insert<gold::Relobj*_const&>
                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);
      }
      else {
        *__position._M_current = (Relobj *)this;
        (pPVar7->deferred_layout_objects_).
        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =
             __position._M_current + 1;
      }
      if (0x28f5c28 < local_140) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */
        std::__throw_length_error("vector::reserve");
      }
      pDVar9 = (this->deferred_layout_).
               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
               ._M_impl._M_start;
      if ((uint)(((int)(this->deferred_layout_).
                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140) {
        pDVar16 = (this->deferred_layout_).
                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                  ._M_impl._M_finish;
                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */
        pDVar40 = (pointer)operator_new(local_140 * 100);
        if (pDVar9 != pDVar16) {
          paVar42 = &(pDVar9->name_).field_2;
          pDVar55 = pDVar40;
          do {
            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;
            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;
            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
                 *)pcVar22 == paVar42) {
              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;
              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =
                   *(undefined4 *)((int)paVar42 + 4);
              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =
                   *(undefined4 *)((int)paVar42 + 8);
              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =
                   *(undefined4 *)((int)paVar42 + 0xc);
            }
            else {
              (pDVar55->name_)._M_dataplus._M_p = pcVar22;
              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;
            }
            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);
            uVar69 = paVar42[1]._M_allocated_capacity;
            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;
            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
                       *)((int)paVar42 + 100);
            *(size_type *)((int)paVar42 + -4) = 0;
            paVar42->_M_local_buf[0] = '\0';
            pDVar55->shndx_ = uVar69;
            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);
            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);
            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);
            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;
            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);
            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);
            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;
            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);
            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;
            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);
            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;
            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);
            paVar42 = paVar41;
            pDVar55 = pDVar55 + 1;
          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &
                           0x3fffffff) + 1].name_.field_2 != paVar41);
        }
        pDVar55 = (this->deferred_layout_).
                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                  ._M_impl._M_finish;
        pDVar74 = (this->deferred_layout_).
                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                  ._M_impl._M_start;
        if (pDVar55 != pDVar74) {
          do {
            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;
            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
                 *)pcVar22 != &(pDVar74->name_).field_2) {
              operator_delete(pcVar22);
            }
            pDVar74 = pDVar74 + 1;
          } while (pDVar55 != pDVar74);
          pDVar74 = (this->deferred_layout_).
                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                    ._M_impl._M_start;
        }
        if (pDVar74 != (pointer)0x0) {
          operator_delete(pDVar74);
        }
        (this->deferred_layout_).
        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
        ._M_impl._M_start = pDVar40;
        (this->deferred_layout_).
        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);
        (this->deferred_layout_).
        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
        ._M_impl._M_end_of_storage = pDVar40 + local_140;
      }
      this->is_deferred_layout_ = true;
    }
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
    super__Bit_iterator_base._M_offset = 0;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.
    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.
    super__Bit_iterator_base._M_offset = 0;
    uVar69 = uVar6 + 0x1f >> 5;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
    _M_end_of_storage = (_Bit_pointer)0x0;
    uVar63 = uVar69 * 4;
                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
    super__Bit_iterator_base._M_p = (_Bit_type *)operator_new(uVar63);
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
    _M_end_of_storage =
         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
         super__Bit_iterator_base._M_p + uVar69;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.
    super__Bit_iterator_base._M_offset = uVar6 & 0x1f;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.
    super__Bit_iterator_base._M_p =
         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
         super__Bit_iterator_base._M_p + ((int)uVar6 >> 5);
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
    super__Bit_iterator_base._M_offset = 0;
    memset(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start
           .super__Bit_iterator_base._M_p,0,uVar63);
    pGVar34 = parameters->options_;
    if (pGVar34 == (General_options *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */
      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");
    }
    bVar4 = (pGVar34->relocatable_).value;
    SVar49.p_ = (Shdr_data<64> *)(uint)bVar4;
    bVar3 = bVar4;
    if (bVar4 == false) {
      bVar3 = (pGVar34->emit_relocs_).value;
    }
    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start
         = (pointer)0x0;
    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish
         = (pointer)0x0;
    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_end_of_storage = (pointer)0x0;
    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_start = (pointer)0x0;
    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_finish = (pointer)0x0;
    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_end_of_storage = (pointer)0x0;
    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_start = (pointer)0x0;
    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_finish = (pointer)0x0;
    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_end_of_storage = (pointer)0x0;
    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_start = (pointer)0x0;
    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_finish = (pointer)0x0;
    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_end_of_storage = (pointer)0x0;
    i = 1;
    if (uVar6 < 2) {
      local_16c = 0;
      local_168 = 0;
LAB_000a2740:
      if (!bVar24) {
        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;
        *(Layout **)((int)piVar62 + -0x10) = layout;
        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;
        Layout::merge_gnu_properties
                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));
        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;
        *(uint *)((int)piVar62 + -0x14) = local_168;
        *(uint *)((int)piVar62 + -0x18) = local_16c;
        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;
        *(Layout **)((int)piVar62 + -0x20) = layout;
        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;
        Layout::layout_gnu_stack
                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),
                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));
        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;
      }
      if (bVar26) {
        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_finish !=
            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_start) {
          *(uint *)((int)piVar62 + -4) = uVar63;
          *(char **)((int)piVar62 + -8) = "do_layout";
          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;
          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;
          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),
                              *(char **)((int)piVar62 + -8));
        }
      }
      else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_finish !=
               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_start) {
        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                  _M_impl._M_start;
        do {
          uVar69 = *puVar58;
          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];
          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];
          *(off_t **)((int)piVar62 + -0x14) = &offset;
          *(uint *)((int)piVar62 + -0x18) = uVar69;
          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;
          *(File_view **)((int)piVar62 + -0x20) = local_180;
          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;
          *(File_view **)((int)piVar62 + -0x28) = local_164;
          *(Layout **)((int)piVar62 + -0x2c) = layout;
          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;
          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);
                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */
          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;
          layout_eh_frame_section
                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),
                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),
                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),
                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),
                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),
                     *(uint *)((int)piVar62 + -0xc));
          puVar58 = puVar58 + 1;
          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;
        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                 _M_impl._M_finish != puVar58);
      }
      if (bVar3 != 0) {
        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;
        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;
                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */
        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;
        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)
                  operator_new(*(uint *)((int)piVar62 + -0x10));
        (pvVar46->
        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).
        _M_impl._M_start = (pointer)0x0;
        (pvVar46->
        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).
        _M_impl._M_finish = (pointer)0x0;
        (pvVar46->
        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).
        _M_impl._M_end_of_storage = (pointer)0x0;
        if (uVar69 == 0) {
          ppRVar68 = (pointer)0x0;
          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;
        }
        else {
          if (0x3fffffff < uVar69) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */
            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;
            std::__throw_bad_alloc();
          }
          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;
                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;
          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));
          ppRVar68 = ppRVar47 + uVar69;
          (pvVar46->
          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)
          ._M_impl._M_start = ppRVar47;
          (pvVar46->
          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)
          ._M_impl._M_end_of_storage = ppRVar68;
          do {
            *ppRVar47 = (Relocatable_relocs *)0x0;
            ppRVar47 = ppRVar47 + 1;
            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;
          } while (ppRVar68 != ppRVar47);
        }
        (pvVar46->
        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).
        _M_impl._M_finish = ppRVar68;
        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;
      }
      if (bVar25) {
        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
            _M_start !=
            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
            _M_finish) {
          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;
          *(char **)((int)piVar62 + -8) = "do_layout";
          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;
          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;
          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),
                              *(char **)((int)piVar62 + -8));
        }
      }
      else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_start !=
               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_finish) {
        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                    _M_impl._M_start;
        do {
          uVar69 = *local_12c;
          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);
          uVar63 = pSVar67->sh_info;
          shdr_2.p_ = pSVar67;
          if (0xfeff < uVar63) {
            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;
            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;
            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum
                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));
            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;
            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;
          }
          if (uVar63 < uVar6) {
            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                       ._M_impl._M_start;
            pOVar44 = ppOVar17[uVar63];
            if (pOVar44 == (Output_section *)0x2) {
              if (!bVar24) {
                puVar56 = local_144 + (shdr_2.p_)->sh_name;
                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;
                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;
                puVar45 = (uchar *)0xffffffff;
                if (puVar56 != (uchar *)0x0) {
                  *(uchar **)((int)piVar62 + -0x10) = puVar56;
                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;
                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));
                  puVar45 = puVar56 + sVar33;
                }
                *(undefined4 *)((int)piVar62 + -4) = 0;
                *(uchar **)((int)piVar62 + -8) = puVar45;
                *(uchar **)((int)piVar62 + -0xc) = puVar56;
                *(off_t **)((int)piVar62 + -0x10) = &offset;
                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;
                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
                _M_construct<char_const*>();
                local_6c = uVar69;
                local_68 = 0;
                local_64 = 0;
                local_60 = (Input_file *)pSVar67->sh_name;
                local_58 = (int)pSVar67->sh_flags;
                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);
                local_50 = *(undefined4 *)&pSVar67->sh_addr;
                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);
                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;
                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);
                local_40 = *(pointer *)&pSVar67->sh_size;
                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);
                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>
                            *)pSVar67->sh_link;
                local_34 = (Object_merge_map *)pSVar67->sh_info;
                local_30 = *(undefined4 *)&pSVar67->sh_addralign;
                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);
                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;
                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);
                *(off_t **)((int)piVar62 + -0xc) = &offset;
                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;
                local_24 = puVar19;
                local_5c = pSVar5;
                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */
                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;
                std::
                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>
                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;
                if ((Sized_relobj_file<64,_false> *)offset !=
                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =
                       (Sized_relobj_file<64,_false> *)offset;
                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;
                  operator_delete(*(void **)((int)piVar62 + -0x10));
                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;
                }
                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
                _M_impl._M_start[uVar69] = (Output_section *)0x2;
                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                          ._M_impl._M_start;
                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;
                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;
              }
            }
            else if (pOVar44 == (Output_section *)0x0) {
              ppOVar17[uVar69] = (Output_section *)0x0;
              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                        ._M_impl._M_start;
              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;
              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;
            }
            else {
              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;
                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */
              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;
              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));
              (pRVar43->reloc_strategies_).
              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =
                   (pointer)0x0;
              (pRVar43->reloc_strategies_).
              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =
                   (pointer)0x0;
              (pRVar43->reloc_strategies_).
              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.
              _M_end_of_storage = (pointer)0x0;
              pRVar43->output_reloc_count_ = 0;
              pRVar43->posd_ = (Output_data *)0x0;
              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)
              {
                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;
                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";
                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;
                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";
                    /* WARNING: Subroutine does not return */
                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;
                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),
                                    *(char **)((int)piVar62 + -8));
              }
              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->
              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>
              )._M_impl._M_start[uVar69] = pRVar43;
              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;
              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;
              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;
              *(uint *)((int)piVar62 + -0x18) = uVar69;
              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;
              *(Layout **)((int)piVar62 + -0x20) = layout;
              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;
              pOVar44 = Layout::layout_reloc<64,_false>
                                  (*(Layout **)((int)piVar62 + -0x20),
                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),
                                   *(uint *)((int)piVar62 + -0x18),
                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),
                                   *(Output_section **)((int)piVar62 + -0x10),
                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));
              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
              _M_impl._M_start[uVar69] = pOVar44;
              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                        ._M_impl._M_start;
              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;
              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;
              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;
            }
          }
          local_12c = local_12c + 1;
        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                 _M_impl._M_finish != local_12c);
      }
      if (bVar26) {
        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
             _M_impl._M_start !=
             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
             _M_impl._M_finish) ||
           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_finish !=
            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_start)) {
          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;
          *(char **)((int)piVar62 + -8) = "do_layout";
          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;
          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;
          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),
                              *(char **)((int)piVar62 + -8));
        }
      }
      else {
        puVar58 = debug_info_sections.
                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;
        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_start !=
            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_finish) {
          do {
            uVar6 = *puVar58;
            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];
            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];
            *(uint *)((int)piVar62 + -0x18) = uVar6;
            *(undefined4 *)((int)piVar62 + -0x1c) = 0;
            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;
            *(File_view **)((int)piVar62 + -0x24) = local_164;
            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;
            *(undefined4 *)((int)piVar62 + -0x2c) = 0;
            *(Layout **)((int)piVar62 + -0x30) = layout;
                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */
            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;
            Layout::add_to_gdb_index<64,_false>
                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),
                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),
                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),
                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),
                       *(uint *)((int)piVar62 + -0x10));
            puVar58 = puVar58 + 1;
          } while (debug_info_sections.
                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish
                   != puVar58);
        }
        puVar58 = debug_types_sections.
                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;
        if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_finish !=
            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_start) {
          do {
            uVar6 = *puVar58;
            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];
            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];
            *(uint *)((int)piVar62 + -0x18) = uVar6;
            *(undefined4 *)((int)piVar62 + -0x1c) = 0;
            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;
            *(File_view **)((int)piVar62 + -0x24) = local_164;
            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;
            *(undefined4 *)((int)piVar62 + -0x2c) = 1;
            *(Layout **)((int)piVar62 + -0x30) = layout;
            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;
            Layout::add_to_gdb_index<64,_false>
                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),
                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),
                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),
                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),
                       *(uint *)((int)piVar62 + -0x10));
            puVar58 = puVar58 + 1;
          } while (debug_types_sections.
                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish
                   != puVar58);
        }
      }
      if (bVar24) {
        if (local_190->section_headers_data != (uchar *)0x0) {
          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;
          operator_delete__(*(void **)((int)piVar62 + -0x10));
        }
        if (local_190->section_names_data != (uchar *)0x0) {
          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;
          operator_delete__(*(void **)((int)piVar62 + -0x10));
        }
        if (local_190->symbols_data != (uchar *)0x0) {
          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;
          operator_delete__(*(void **)((int)piVar62 + -0x10));
        }
        if (local_190->symbol_names_data != (uchar *)0x0) {
          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;
          operator_delete__(*(void **)((int)piVar62 + -0x10));
        }
        (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0;
      }
      else {
        pFVar20 = sd->section_headers;
        if (pFVar20 != (File_view *)0x0) {
          *(File_view **)((int)piVar62 + -0x10) = pFVar20;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;
          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))
          ;
          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;
          *(File_view **)((int)piVar62 + -0x10) = pFVar20;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;
          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));
        }
        pFVar20 = sd->section_names;
        sd->section_headers = (File_view *)0x0;
        if (pFVar20 != (File_view *)0x0) {
          *(File_view **)((int)piVar62 + -0x10) = pFVar20;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;
          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))
          ;
          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;
          *(File_view **)((int)piVar62 + -0x10) = pFVar20;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;
          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));
        }
        sd->section_names = (File_view *)0x0;
      }
    }
    else {
      shdr.p_ = local_134;
      uVar69 = *(uint *)(local_160 + 0x40);
      local_124 = *(Sized_relobj_file<64,_false> **)(local_160 + 0x44);
      if (uVar69 < local_148) {
        local_16c = 0;
        local_168 = 0;
        ppuVar57 = local_120;
        piVar62 = (int *)&stack0xfffffe54;
        do {
          pbVar70 = local_144 + uVar69;
          shdr.p_ = local_134;
          if (bVar24) {
LAB_000a22b0:
            if (bVar26) {
              if (parameters->options_ == (General_options *)0x0) {
                piVar62[-2] = (int)"options";
                piVar62[-3] = 0x5c;
                piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                piVar62[-5] = 0xa42f6;
                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
              }
              if ((parameters->options_->gc_sections_).value != false) {
                piVar62[-3] = (int)pbVar70;
                piVar62[-4] = (int)this;
                piVar62[-5] = 0xa22ee;
                bVar29 = Relobj::is_section_name_included((Relobj *)piVar62[-4],(char *)piVar62[-3])
                ;
                if (bVar29) {
LAB_000a2c68:
                  offset._0_4_ = this;
                  offset._4_4_ = (_Base_ptr)i;
                  piVar62[-3] = (int)&offset;
                  piVar62[-4] = (int)symtab->gc_;
                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */
                  piVar62[-5] = 0xa2c8c;
                  std::
                  vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>
                  ::emplace_back<std::pair<gold::Relobj*,_unsigned_int>_>
                            ((vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>
                              *)piVar62[-4],(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3]);
                }
                else {
                  piVar62[-2] = (int)pbVar70;
                  piVar62[-3] = (int)this;
                  piVar62[-4] = (int)layout;
                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */
                  piVar62[-5] = 0xa2313;
                  bVar29 = Layout::keep_input_section
                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],
                                      (char *)piVar62[-2]);
                  if ((bVar29) ||
                     ((undefined1 *)
                      ((int)&local_124[-1].deferred_layout_relocs_.
                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)) goto LAB_000a2c68;
                }
                piVar62[-3] = (int)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_"
                ;
                piVar62[-4] = (int)pbVar70;
                piVar62[-5] = 0xa234c;
                sVar33 = strspn((char *)piVar62[-4],(char *)piVar62[-3]);
                uVar69 = i;
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX;
                ppuVar57 = local_120;
                if (pbVar70[sVar33] == 0) {
                  pGVar13 = symtab->gc_;
                  piVar62[-4] = (int)pbVar70;
                  offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;
                  piVar62[-5] = 0xa3075;
                  sVar33 = strlen((char *)piVar62[-4]);
                  piVar62[-1] = 0;
                  piVar62[-2] = (int)(pbVar70 + sVar33);
                  piVar62[-3] = (int)pbVar70;
                  piVar62[-4] = (int)&offset;
                  piVar62[-5] = 0xa3089;
                  std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
                  _M_construct<char_const*>();
                  p_Var53 = offset._4_4_;
                  pSVar51 = (Sized_relobj_file<64,_false> *)offset;
                  p_Var52 = (pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header
                            ._M_parent;
                  p_Var73 = &(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.
                             _M_header;
                  shdr_2.p_ = (Shdr_data<64> *)this;
                  local_174 = p_Var73;
                  if (p_Var52 == (_Base_ptr)0x0) {
LAB_000a320c:
                    piVar62[-3] = (int)&local_f1;
                    piVar62[-4] = (int)&local_e8;
                    piVar62[-5] = (int)&std::piecewise_construct;
                    local_e8 = &offset;
                    piVar62[-6] = (int)p_Var73;
                    piVar62[-7] = (int)&pGVar13->cident_sections_;
                    piVar62[-8] = (int)local_100;
                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */
                    piVar62[-9] = 0xa324d;
                    std::
                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>
                    ::
                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::tuple<>_>
                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>
                                *)piVar62[-8],(_Base_ptr)piVar62[-7],
                               (piecewise_construct_t *)piVar62[-6],
                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>
                                *)piVar62[-5],(tuple<> *)piVar62[-4]);
                    local_174 = local_100[0];
                  }
                  else {
LAB_000a30e5:
                    do {
                      p_Var66 = p_Var52;
                      p_Var52 = p_Var66[1]._M_parent;
                      p_Var35 = p_Var53;
                      if (p_Var52 <= p_Var53) {
                        p_Var35 = p_Var52;
                      }
                      if (p_Var35 == (_Base_ptr)0x0) {
LAB_000a3116:
                        iVar50 = (int)p_Var52 - (int)p_Var53;
                      }
                      else {
                        piVar62[-2] = (int)p_Var35;
                        piVar62[-3] = (int)pSVar51;
                        piVar62[-4] = p_Var66[1]._M_color;
                        piVar62[-5] = 0xa310f;
                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);
                        if (iVar50 == 0) goto LAB_000a3116;
                      }
                      if (-1 < iVar50) {
                        p_Var52 = p_Var66->_M_left;
                        local_174 = p_Var66;
                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;
                        goto LAB_000a30e5;
                      }
                      p_Var52 = p_Var66->_M_right;
                    } while (p_Var66->_M_right != (_Base_ptr)0x0);
                    bVar29 = p_Var73 == local_174;
                    p_Var73 = local_174;
                    if (bVar29) goto LAB_000a320c;
                    p_Var52 = local_174[1]._M_parent;
                    p_Var35 = p_Var52;
                    if (p_Var53 <= p_Var52) {
                      p_Var35 = p_Var53;
                    }
                    if (p_Var35 == (_Base_ptr)0x0) {
LAB_000a3174:
                      iVar50 = (int)p_Var53 - (int)p_Var52;
                    }
                    else {
                      piVar62[-2] = (int)p_Var35;
                      piVar62[-3] = local_174[1]._M_color;
                      piVar62[-4] = (int)pSVar51;
                      piVar62[-5] = 0xa3167;
                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);
                      if (iVar50 == 0) goto LAB_000a3174;
                    }
                    if (iVar50 < 0) goto LAB_000a320c;
                  }
                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);
                  ppuVar57 = (undefined **)&local_174[2]._M_left;
                  local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;
                  piVar62[-1] = (int)p_Var36;
                  piVar62[-2] = (int)&shdr_2;
                  piVar62[-3] = local_170;
                  piVar62[-4] = (int)ppuVar57;
                  piVar62[-5] = 0xa31b4;
                  p_Var37 = std::
                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_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
                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],
                                       piVar62[-1]);
                  if ((p_Var37 == (__node_base *)0x0) ||
                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,
                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {
                    piVar62[-4] = 0x10;
                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */
                    piVar62[-5] = 0xa32a8;
                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);
                    *pp_Var38 = (_func_int_varargs *)0x0;
                    pp_Var38[1] = (_func_int_varargs *)this;
                    pp_Var38[2] = (_func_int_varargs *)uVar69;
                    local_e4 = local_174[3]._M_right;
                    piVar62[-4] = 1;
                    piVar62[-5] = (int)local_174[3]._M_parent;
                    piVar62[-6] = (int)local_174[2]._M_right;
                    piVar62[-7] = (int)&local_174[3]._M_left;
                    piVar62[-8] = (int)local_10c;
                    piVar62[-9] = 0xa32eb;
                    std::__detail::_Prime_rehash_policy::_M_need_rehash
                              (piVar62[-8],piVar62[-7],piVar62[-6]);
                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;
                    if (local_10c[0] != '\0') {
                      piVar62[-2] = (int)&local_e4;
                      piVar62[-3] = local_108;
                      piVar62[-4] = (int)ppuVar57;
                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */
                      piVar62[-5] = 0xa3696;
                      std::
                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);
                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;
                    }
                    pp_Var38[3] = p_Var36;
                    ppuVar57 = (undefined **)(local_170 * 4);
                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];
                    if (piVar14 == (int *)0x0) {
                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;
                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;
                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;
                      if (*pp_Var38 != (_func_int_varargs *)0x0) {
                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->
                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)
                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;
                      }
                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)
                        .super_Relobj.super_Object._vptr_Object)[local_170] =
                           (_func_int_varargs **)(local_174 + 3);
                    }
                    else {
                      *pp_Var38 = (_func_int_varargs *)*piVar14;
                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =
                           pp_Var38;
                    }
                    local_174[3]._M_parent =
                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);
                  }
                  if ((Sized_relobj_file<64,_false> *)offset !=
                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;
                    piVar62[-5] = 0xa31e7;
                    operator_delete((void *)piVar62[-4]);
                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;
                    ppuVar57 = local_120;
                  }
                }
              }
            }
            if ((bVar3 == 0) ||
               ((local_124 != (Sized_relobj_file<64,_false> *)0x9 &&
                (local_124 != (Sized_relobj_file<64,_false> *)0x4)))) {
              if ((local_124 != (Sized_relobj_file<64,_false> *)0x11) || (bVar4 == false)) {
                piVar62[-3] = (int)&shdr;
                piVar62[-4] = (int)this;
                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */
                piVar62[-5] = 0xa29c8;
                bVar29 = check_eh_frame_flags
                                   ((Sized_relobj_file<64,_false> *)piVar62[-4],
                                    (Shdr<64,_false> *)piVar62[-3]);
                uVar69 = i;
                bVar75 = false;
                bVar29 = !bVar29;
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_03;
                if (!bVar29) {
                  SVar49.p_ = (Shdr_data<64> *)0xa;
                  pbVar65 = pbVar70;
                  pbVar72 = (byte *)".eh_frame";
                  do {
                    if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                        (Sized_relobj_file<64,_false> *)0x0) break;
                    SVar49.p_ = (Shdr_data<64> *)
                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->
                                       output_views_ + 3);
                    bVar75 = *pbVar65 < *pbVar72;
                    bVar29 = *pbVar65 == *pbVar72;
                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                  } while (bVar29);
                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {
                    if (bVar26) {
                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                      ._M_impl._M_start[i] =
                           (Output_section *)((this->is_deferred_layout_ != false) + 1);
                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                                ._M_impl._M_start;
                      *(undefined4 *)(puVar18 + i) = 0xffffffff;
                      *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;
                    }
                    else if (this->is_deferred_layout_ == false) {
                      if (eh_frame_sections.
                          super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                          _M_finish ==
                          eh_frame_sections.
                          super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                          _M_end_of_storage) {
                        piVar62[-2] = (int)&i;
                        piVar62[-3] = (int)eh_frame_sections.
                                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                           ._M_impl._M_finish;
                        piVar62[-4] = (int)&eh_frame_sections;
                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = 0xa426e;
                        std::vector<unsigned_int,_std::allocator<unsigned_int>_>::
                        _M_realloc_insert<unsigned_int_const&>
                                  ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)
                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_29;
                      }
                      else {
                        *eh_frame_sections.
                         super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                         _M_finish = i;
                        eh_frame_sections.
                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                        _M_finish = eh_frame_sections.
                                    super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                    _M_impl._M_finish + 1;
                      }
                    }
                    else {
                      uVar39 = puVar31[i];
                      uVar11 = puVar30[i];
                      piVar62[-1] = 0xa2a5f;
                      std::__cxx11::
                      basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
                      basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>
                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);
                      local_6c = uVar69;
                      local_68 = uVar11;
                      local_64 = uVar39;
                      local_60 = (Input_file *)local_134->sh_name;
                      local_58 = (int)local_134->sh_flags;
                      local_54 = *(uint *)((int)&local_134->sh_flags + 4);
                      local_50 = *(undefined4 *)&local_134->sh_addr;
                      local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);
                      local_48 = *(Compressed_section_map **)&local_134->sh_offset;
                      local_44 = *(pointer *)((int)&local_134->sh_offset + 4);
                      local_40 = *(pointer *)&local_134->sh_size;
                      local_3c = *(pointer *)((int)&local_134->sh_size + 4);
                      local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>
                                  *)local_134->sh_link;
                      local_34 = (Object_merge_map *)local_134->sh_info;
                      local_30 = *(undefined4 *)&local_134->sh_addralign;
                      local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);
                      local_28 = *(Symbols_data **)&local_134->sh_entsize;
                      local_24 = *(uint **)((int)&local_134->sh_entsize + 4);
                      piVar62[-3] = (int)&offset;
                      piVar62[-4] = (int)&this->deferred_layout_;
                      local_5c = pSVar5;
                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */
                      piVar62[-5] = 0xa2aea;
                      std::
                      vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                      ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>
                                ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3]);
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_04;
                      ppuVar57 = (undefined **)uVar69;
                      if ((Sized_relobj_file<64,_false> *)offset !=
                          (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                        piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;
                        piVar62[-5] = 0xa2b0a;
                        operator_delete((void *)piVar62[-4]);
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_05;
                        ppuVar57 = local_120;
                      }
                    }
                    goto LAB_000a23a1;
                  }
                }
                if (bVar24) {
                  pGVar34 = parameters->options_;
                  if (pGVar34 == (General_options *)0x0) {
                    piVar62[-1] = (int)ppuVar57;
                    piVar62[-2] = (int)"options";
                    piVar62[-3] = 0x5c;
                    piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    piVar62[-5] = 0xa4330;
                    do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                  }
                  iVar50 = i * 4;
                  pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                            super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                            ._M_impl._M_start[i];
                  SVar49.p_ = (Shdr_data<64> *)this;
                  if ((pGVar34->gc_sections_).value == false) {
LAB_000a2f0d:
                    if (pGVar34->icf_status_ != ICF_NONE) {
                      if (pOVar44 == (Output_section *)0x0) {
                        puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                                  super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                                  ._M_impl._M_start;
                        uVar69 = *(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i];
                        SVar49.p_ = shdr.p_;
                        if (uVar69 != 0xffffffff) {
                          piVar62[-1] = uVar69;
                          piVar62[-2] = (int)"do_layout";
                          piVar62[-3] = 0x6f9;
                          piVar62[-4] = (int)"../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
                          piVar62[-5] = (int)&UNK_000a2f61;
                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                        }
                        goto LAB_000a23a1;
                      }
LAB_000a2cf0:
                      SVar49.p_ = shdr.p_;
                      if (((shdr.p_)->sh_flags & 2) != 0) {
                        piVar62[-2] = i;
                        piVar62[-3] = (int)this;
                        piVar62[-4] = (int)symtab->icf_;
                        piVar62[-5] = 0xa3ddb;
                        bVar29 = Icf::is_section_folded
                                           ((Icf *)piVar62[-4],(Relobj *)piVar62[-3],piVar62[-2]);
                        if (bVar29) {
                          if (parameters->options_ == (General_options *)0x0) {
                            piVar62[-1] = iVar50;
                            piVar62[-2] = (int)"options";
                            piVar62[-3] = 0x5c;
                            piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */
                            piVar62[-5] = 0xa44a9;
                            do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])
                            ;
                          }
                          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_20;
                          ppuVar57 = local_120;
                          uVar69 = i;
                          if ((parameters->options_->print_icf_sections_).value == false)
                          goto LAB_000a2c3a;
                          piVar62[-1] = i;
                          piVar62[-2] = (int)this;
                          piVar62[-3] = (int)symtab->icf_;
                          piVar62[-4] = (int)&local_11c;
                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */
                          piVar62[-5] = 0xa4081;
                          Icf::get_folded_section
                                    ((Icf *)piVar62[-3],(Relobj *)piVar62[-2],piVar62[-1]);
                          iVar50 = *local_11c;
                          iVar12 = local_11c[1];
                          piVar62[-2] = local_118;
                          piVar62[-3] = (int)local_11c;
                          piVar62[-4] = (int)&offset;
                          pcVar21 = *(code **)(iVar50 + 0x40);
                          piVar62[-5] = 0xa409e;
                          (*pcVar21)();
                          pSVar51 = (Sized_relobj_file<64,_false> *)offset;
                          pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                                    name_._M_dataplus._M_p;
                          p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                                    _vptr_Object[0x10];
                          if (p_Var36 == do_section_name) {
                            piVar62[-3] = i;
                            piVar62[-4] = (int)&this->elf_file_;
                            piVar62[-5] = (int)&shdr_2;
                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */
                            piVar62[-6] = 0xa40ec;
                            elfcpp::Elf_file<64,_false,_gold::Object>::section_name
                                      ((Elf_file<64,_false,_gold::Object> *)piVar62[-4],piVar62[-3])
                            ;
                            piVar61 = piVar62 + -4;
                          }
                          else {
                            piVar62[-3] = i;
                            piVar62[-4] = (int)this;
                            piVar61 = piVar62 + -5;
                            piVar62[-5] = (int)&shdr_2;
                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */
                            piVar62[-6] = 0xa42b7;
                            (*p_Var36)();
                          }
                          SVar49.p_ = shdr_2.p_;
                          pcVar28 = program_name;
                          piVar61[-1] = (int)
                                        "%s: ICF folding section \'%s\' in file \'%s\' into \'%s\' in file \'%s\'"
                          ;
                          piVar61[-2] = 0xa4120;
                          uVar39 = gettext();
                          *piVar61 = iVar12;
                          piVar61[-1] = (int)pSVar51;
                          piVar61[-2] = (int)pcVar22;
                          piVar61[-3] = (int)SVar49.p_;
                          piVar61[-4] = (int)pcVar28;
                          piVar61[-5] = uVar39;
                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */
                          piVar61[-6] = 0xa4146;
                          gold_info((char *)piVar61[-5]);
                          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_24;
                          if (shdr_2.p_ != (Shdr_data<64> *)local_94) {
                            piVar61[-1] = (int)shdr_2.p_;
                            piVar61[-2] = 0xa4162;
                            operator_delete((void *)piVar61[-1]);
                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_25;
                          }
                          piVar62 = piVar61 + 3;
                          if ((Sized_relobj_file<64,_false> *)offset !=
                              (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                            piVar61[-1] = (int)(Sized_relobj_file<64,_false> *)offset;
                            piVar61[-2] = 0xa417e;
                            operator_delete((void *)piVar61[-1]);
                            piVar62 = piVar61 + 3;
                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_26;
                          }
                          goto LAB_000a4181;
                        }
                        iVar50 = i * 4;
                        pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.
                                  output_sections_.
                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                                  ._M_impl._M_start[i];
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_20;
                        ppuVar57 = local_120;
                      }
                    }
                  }
                  else {
                    if (pOVar44 == (Output_section *)0x0) {
                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                                ._M_impl._M_start;
                      if ((*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]) != 0xffffffff) {
                        piVar62[-1] = (int)this;
                        piVar62[-2] = (int)"do_layout";
                        piVar62[-3] = 0x6e4;
                        piVar62[-4] = (int)"../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = (int)&UNK_000a342d;
                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                      }
                      goto LAB_000a23a1;
                    }
                    if (((shdr.p_)->sh_flags & 2) != 0) {
                      offset._4_4_ = (_Base_ptr)i;
                      pGVar13 = symtab->gc_;
                      offset._0_4_ = this;
                      piVar62[-2] = (int)&offset;
                      piVar62[-3] = (int)&pGVar13->referenced_list_;
                      piVar62[-4] = (int)&local_110;
                      piVar62[-5] = 0xa2ed3;
                      std::
                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                              *)piVar62[-3],(key_type *)piVar62[-2]);
                      pGVar34 = parameters->options_;
                      if (local_110 != 0) {
                        if (pGVar34 == (General_options *)0x0) {
                          piVar62[-1] = 0;
                          piVar62[-2] = (int)"options";
                          piVar62[-3] = 0x5c;
                          piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                          piVar62[-5] = 0xa434c;
                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                        }
                        iVar50 = i * 4;
                        pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.
                                  output_sections_.
                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                                  ._M_impl._M_start[i];
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;
                        ppuVar57 = (undefined **)this;
                        goto LAB_000a2f0d;
                      }
                      if (pGVar34 == (General_options *)0x0) {
                        piVar62[-1] = 0;
                        piVar62[-2] = (int)"options";
                        piVar62[-3] = 0x5c;
                        piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = 0xa43a7;
                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                      }
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;
                      uVar69 = i;
                      if ((pGVar34->print_gc_sections_).value == false) goto LAB_000a2c3a;
                      pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                                name_._M_dataplus._M_p;
                      p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                                _vptr_Object[0x10];
                      if (p_Var36 == do_section_name) {
                        piVar62[-2] = i;
                        piVar62[-3] = (int)&this->elf_file_;
                        piVar62[-4] = (int)&offset;
                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = 0xa3909;
                        elfcpp::Elf_file<64,_false,_gold::Object>::section_name
                                  ((Elf_file<64,_false,_gold::Object> *)piVar62[-3],piVar62[-2]);
                        puVar60 = piVar62 + -3;
                      }
                      else {
                        piVar62[-2] = i;
                        piVar62[-3] = (int)this;
                        puVar60 = piVar62 + -4;
                        piVar62[-4] = (int)&offset;
                        piVar62[-5] = 0xa42a2;
                        (*p_Var36)();
                      }
                      pSVar51 = (Sized_relobj_file<64,_false> *)offset;
                      pcVar28 = program_name;
                      puVar60[-1] = "%s: removing unused section from \'%s\' in file \'%s\'";
                      puVar60[-2] = 0xa3934;
                      uVar39 = gettext();
                      puVar60[2] = pcVar22;
                      puVar60[1] = pSVar51;
                      *puVar60 = pcVar28;
                      puVar60[-1] = uVar39;
                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */
                      puVar60[-2] = 0xa394e;
                      gold_info((char *)puVar60[-1]);
                      piVar62 = puVar60 + 3;
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_14;
                      if ((Sized_relobj_file<64,_false> *)offset !=
                          (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                        puVar60[-1] = (Sized_relobj_file<64,_false> *)offset;
                        puVar60[-2] = 0xa3968;
                        operator_delete((void *)puVar60[-1]);
                        piVar62 = puVar60 + 3;
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_15;
                      }
LAB_000a4181:
                      ppuVar57 = &_GLOBAL_OFFSET_TABLE_;
                      uVar69 = i;
                      goto LAB_000a2c3a;
                    }
                    SVar49 = shdr;
                    if (pGVar34->icf_status_ != ICF_NONE) goto LAB_000a2cf0;
                  }
                  if (pOVar44 != (Output_section *)0x2) {
                    if (bVar26) goto LAB_000a2b6b;
LAB_000a2d10:
                    uVar69 = i;
                    iVar12 = *(int *)((int)puVar30 + iVar50);
                    piVar62[-4] = (int)&offset;
                    piVar62[-5] = *(undefined4 *)((int)puVar31 + iVar50);
                    piVar62[-6] = iVar12;
                    piVar62[-7] = (int)local_124;
                    piVar62[-8] = (int)&shdr;
                    piVar62[-9] = (int)pbVar70;
                    piVar62[-10] = i;
                    piVar62[-0xb] = (int)this;
                    piVar62[-0xc] = (int)layout;
                    piVar62[-0xd] = 0xa2d54;
                    pOVar44 = Layout::layout<64,_false>
                                        ((Layout *)piVar62[-0xc],
                                         (Sized_relobj_file<64,_false> *)piVar62[-0xb],piVar62[-10],
                                         (char *)piVar62[-9],(Shdr<64,_false> *)piVar62[-8],
                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4]);
                    *(Output_section **)
                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                           ._M_impl._M_start + iVar50) = pOVar44;
                    ppuVar57 = (undefined **)
                               ((uint)offset._4_4_ & (uint)(Sized_relobj_file<64,_false> *)offset);
                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                              ._M_impl._M_start + uVar69;
                    if ((Sized_relobj_file<64,_false> *)ppuVar57 ==
                        (Sized_relobj_file<64,_false> *)0xffffffff) {
                      *(undefined4 *)puVar18 = 0xffffffff;
                      *(undefined4 *)((int)puVar18 + 4) = 0xffffffff;
                    }
                    else {
                      *(Sized_relobj_file<64,_false> **)puVar18 =
                           (Sized_relobj_file<64,_false> *)offset;
                      *(_Base_ptr *)((int)puVar18 + 4) = offset._4_4_;
                    }
                    if ((((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==
                         0xffffffff) && (iVar12 != 0)) {
                      (this->super_Sized_relobj<64,_false>).super_Relobj.
                      relocs_must_follow_section_writes_ = true;
                    }
                    SVar49.p_ = (Shdr_data<64> *)(Sized_relobj_file<64,_false> *)offset;
                    if (bVar4 == false) {
                      if (parameters->options_ == (General_options *)0x0) {
                        piVar62[-1] = 0;
                        piVar62[-2] = (int)"options";
                        piVar62[-3] = 0x5c;
                        piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = 0xa43fb;
                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                      }
                      if ((parameters->options_->gdb_index_).value != false) {
                        bVar29 = false;
                        bVar75 = ((shdr.p_)->sh_flags & 2) == 0;
                        if (bVar75) {
                          SVar49.p_ = (Shdr_data<64> *)0xc;
                          pbVar65 = pbVar70;
                          pbVar72 = (byte *)".debug_info";
                          do {
                            if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                                (Sized_relobj_file<64,_false> *)0x0) break;
                            SVar49.p_ = (Shdr_data<64> *)
                                        ((int)&((Sized_relobj_file<64,_false> *)
                                               ((int)SVar49.p_ + -0x13c))->output_views_ + 3);
                            bVar29 = *pbVar65 < *pbVar72;
                            bVar75 = *pbVar65 == *pbVar72;
                            pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                            pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                          } while (bVar75);
                          bVar76 = false;
                          bVar29 = (!bVar29 && !bVar75) == bVar29;
                          if (!bVar29) {
                            SVar49.p_ = (Shdr_data<64> *)0xd;
                            pbVar65 = pbVar70;
                            pbVar72 = (byte *)".zdebug_info";
                            do {
                              if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                                  (Sized_relobj_file<64,_false> *)0x0) break;
                              SVar49.p_ = (Shdr_data<64> *)
                                          ((int)&((Sized_relobj_file<64,_false> *)
                                                 ((int)SVar49.p_ + -0x13c))->output_views_ + 3);
                              bVar76 = *pbVar65 < *pbVar72;
                              bVar29 = *pbVar65 == *pbVar72;
                              pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                              pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                            } while (bVar29);
                            bVar75 = false;
                            bVar29 = (!bVar76 && !bVar29) == bVar76;
                            if (!bVar29) {
                              SVar49.p_ = (Shdr_data<64> *)0xd;
                              pbVar65 = pbVar70;
                              pbVar72 = (byte *)".debug_types";
                              do {
                                if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                                    (Sized_relobj_file<64,_false> *)0x0) break;
                                SVar49.p_ = (Shdr_data<64> *)
                                            ((int)&((Sized_relobj_file<64,_false> *)
                                                   ((int)SVar49.p_ + -0x13c))->output_views_ + 3);
                                bVar75 = *pbVar65 < *pbVar72;
                                bVar29 = *pbVar65 == *pbVar72;
                                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                              } while (bVar29);
                              bVar76 = false;
                              bVar29 = (!bVar75 && !bVar29) == bVar75;
                              if (!bVar29) {
                                SVar49.p_ = (Shdr_data<64> *)0xe;
                                pbVar65 = (byte *)".zdebug_types";
                                do {
                                  if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                                      (Sized_relobj_file<64,_false> *)0x0) break;
                                  SVar49.p_ = (Shdr_data<64> *)
                                              ((int)&((Sized_relobj_file<64,_false> *)
                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);
                                  bVar76 = *pbVar70 < *pbVar65;
                                  bVar29 = *pbVar70 == *pbVar65;
                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;
                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                                } while (bVar29);
                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;
                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;
                              }
                              if (debug_types_sections.
                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                  _M_impl._M_finish ==
                                  debug_types_sections.
                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                  _M_impl._M_end_of_storage) {
                                piVar62[-2] = (int)&i;
                                piVar62[-3] = (int)debug_types_sections.
                                                                                                      
                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                                  ._M_impl._M_finish;
                                piVar62[-4] = (int)&debug_types_sections;
                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */
                                piVar62[-5] = 0xa42d3;
                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::
                                _M_realloc_insert<unsigned_int_const&>
                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)
                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);
                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;
                                ppuVar57 = local_120;
                              }
                              else {
                                *debug_types_sections.
                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                 _M_impl._M_finish = i;
                                debug_types_sections.
                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                _M_impl._M_finish =
                                     debug_types_sections.
                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                     ._M_impl._M_finish + 1;
                                ppuVar57 = local_120;
                              }
                              goto LAB_000a23a1;
                            }
                          }
                          if (debug_info_sections.
                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                              _M_impl._M_finish ==
                              debug_info_sections.
                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                              _M_impl._M_end_of_storage) {
                            piVar62[-2] = (int)&i;
                            piVar62[-3] = (int)debug_info_sections.
                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                               ._M_impl._M_finish;
                            piVar62[-4] = (int)&debug_info_sections;
                            piVar62[-5] = 0xa428a;
                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::
                            _M_realloc_insert<unsigned_int_const&>
                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)
                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);
                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;
                          }
                          else {
                            *debug_info_sections.
                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl
                             ._M_finish = i;
                            debug_info_sections.
                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                            _M_finish = debug_info_sections.
                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                        ._M_impl._M_finish + 1;
                          }
                        }
                      }
                    }
                  }
                }
                else {
                  iVar50 = i * 4;
                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {
                    if (!bVar26) goto LAB_000a2d10;
LAB_000a2b6b:
                    *(undefined4 *)
                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                           ._M_impl._M_start + iVar50) = 1;
                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                              ._M_impl._M_start;
                    *(undefined4 *)(puVar18 + i) = 0xffffffff;
                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;
                  }
                  else {
                    uVar39 = puVar31[i];
                    uVar11 = puVar30[i];
                    piVar62[-1] = 0xa3ea6;
                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>
                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>
                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);
                    local_68 = uVar11;
                    local_6c = uVar69;
                    local_64 = uVar39;
                    local_60 = (Input_file *)local_134->sh_name;
                    local_58 = (int)local_134->sh_flags;
                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);
                    local_50 = *(undefined4 *)&local_134->sh_addr;
                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);
                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;
                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);
                    local_40 = *(pointer *)&local_134->sh_size;
                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);
                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>
                                *)local_134->sh_link;
                    local_34 = (Object_merge_map *)local_134->sh_info;
                    local_30 = *(undefined4 *)&local_134->sh_addralign;
                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);
                    local_28 = *(Symbols_data **)&local_134->sh_entsize;
                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);
                    piVar62[-3] = (int)&offset;
                    piVar62[-4] = (int)&this->deferred_layout_;
                    local_5c = local_124;
                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */
                    piVar62[-5] = 0xa3f32;
                    std::
                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>
                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);
                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;
                    if ((Sized_relobj_file<64,_false> *)offset !=
                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;
                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;
                      piVar62[-5] = 0xa3f4e;
                      operator_delete((void *)piVar62[-4]);
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;
                    }
                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                    ._M_impl._M_start[i] = (Output_section *)0x2;
                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                              ._M_impl._M_start;
                    *(undefined4 *)(puVar18 + i) = 0xffffffff;
                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;
                    ppuVar57 = (undefined **)local_124;
                  }
                }
              }
            }
            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                     _M_impl._M_finish ==
                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                     _M_impl._M_end_of_storage) {
              piVar62[-2] = (int)&i;
              piVar62[-3] = (int)reloc_sections.
                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                 _M_impl._M_finish;
              piVar62[-4] = (int)&reloc_sections;
              piVar62[-5] = 0xa3e57;
              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::
              _M_realloc_insert<unsigned_int_const&>
                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)piVar62[-4],
                         (uint *)piVar62[-3],(uint *)piVar62[-2]);
              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_21;
            }
            else {
              *reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_finish = i;
              reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl
              ._M_finish = reloc_sections.
                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                           _M_finish + 1;
            }
          }
          else {
            piVar62[-1] = (int)symtab;
            piVar62[-2] = i;
            piVar62[-3] = (int)pbVar70;
            piVar62[-4] = (int)this;
            piVar62[-5] = 0xa2406;
            bVar29 = Object::handle_gnu_warning_section
                               ((Object *)piVar62[-4],(char *)piVar62[-3],piVar62[-2],
                                (Symbol_table *)piVar62[-1]);
            bVar75 = !bVar29;
            if (bVar29) {
              bVar75 = false;
              bVar29 = bVar4 == false;
              if (bVar29) {
                if (parameters->options_ == (General_options *)0x0) {
                  piVar62[-1] = 0;
                  piVar62[-2] = (int)"options";
                  piVar62[-3] = 0x5c;
                  piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */
                  piVar62[-5] = 0xa4433;
                  do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                }
                bVar75 = false;
                bVar29 = (parameters->options_->shared_).value == false;
                if (bVar29) {
                  puVar19 = omit.super__Bvector_base<std::allocator<bool>_>._M_impl.
                            super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p +
                            (i >> 5);
                  bVar75 = false;
                  *puVar19 = *puVar19 | 1 << ((byte)i & 0x1f);
                  bVar29 = *puVar19 == 0;
                }
              }
            }
            iVar50 = 0x10;
            pbVar65 = pbVar70;
            pbVar72 = (byte *)".note.GNU-stack";
            do {
              pbVar71 = pbVar72;
              if (iVar50 == 0) break;
              iVar50 = iVar50 + -1;
              pbVar71 = pbVar72 + (uint)bVar77 * -2 + 1;
              bVar75 = *pbVar65 < *pbVar72;
              bVar29 = *pbVar65 == *pbVar72;
              pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
              pbVar72 = pbVar71;
            } while (bVar29);
            if ((!bVar75 && !bVar29) == bVar75) {
              local_137 = true;
              local_16c = (uint)(shdr.p_)->sh_flags | local_16c;
              local_168 = *(uint *)((int)&(shdr.p_)->sh_flags + 4) | local_168;
              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
              _M_start.super__Bit_iterator_base._M_p[i >> 5] =
                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                   _M_start.super__Bit_iterator_base._M_p[i >> 5] | 1 << ((byte)i & 0x1f);
            }
            piVar62[-3] = (int)pbVar70;
            piVar62[-4] = (int)this;
            piVar62[-5] = 0xa2497;
            bVar29 = Object::handle_split_stack_section((Object *)piVar62[-4],(char *)piVar62[-3]);
            SVar49.p_ = (Shdr_data<64> *)i;
            pPVar27 = parameters;
            bVar48 = (byte)i;
            if ((bVar29) && (bVar4 == false)) {
              if (parameters->options_ == (General_options *)0x0) {
                piVar62[-1] = (int)pbVar71;
                piVar62[-2] = (int)"options";
                piVar62[-3] = 0x5c;
                piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                piVar62[-5] = 0xa444f;
                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
              }
              if ((parameters->options_->shared_).value == false) {
                omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                _M_start.super__Bit_iterator_base._M_p[i >> 5] =
                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.
                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5] |
                     1 << (bVar48 & 0x1f);
              }
            }
            if (pPVar27->target_ == (Target *)0x0) {
              piVar62[-2] = (int)"target";
              piVar62[-3] = 0x69;
              piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
              piVar62[-5] = 0xa4314;
              do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
            }
            iVar50 = *(int *)(*(int *)(pPVar27->target_ + 4) + 0x50);
            bVar29 = iVar50 == 0;
            uVar23 = (uint3)(i >> 8);
            if (bVar29) {
LAB_000a2b98:
              bVar75 = false;
              iVar50 = 0x10;
              pbVar65 = pbVar70;
              pbVar72 = (byte *)".gnu.attributes";
              do {
                if (iVar50 == 0) break;
                iVar50 = iVar50 + -1;
                bVar75 = *pbVar65 < *pbVar72;
                bVar29 = *pbVar65 == *pbVar72;
                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
              } while (bVar29);
              if ((!bVar75 && !bVar29) == bVar75) goto LAB_000a24fe;
              if (local_124 != (Sized_relobj_file<64,_false> *)0x7) goto LAB_000a2522;
LAB_000a2bcb:
              bVar75 = local_124 == (Sized_relobj_file<64,_false> *)0x7;
              bVar29 = local_124 < (Sized_relobj_file<64,_false> *)0x7;
              iVar50 = 0x13;
              pbVar65 = pbVar70;
              pbVar72 = (byte *)".note.gnu.property";
              do {
                if (iVar50 == 0) break;
                iVar50 = iVar50 + -1;
                bVar29 = *pbVar65 < *pbVar72;
                bVar75 = *pbVar65 == *pbVar72;
                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
              } while (bVar75);
              if ((!bVar29 && !bVar75) != bVar29) {
                bVar29 = (1 << (bVar48 & 0x1f) &
                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.
                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p
                         [(uint)SVar49.p_ >> 5]) != 0;
                ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);
                if (bVar29) goto LAB_000a2c18;
LAB_000a2551:
                bVar29 = false;
                bVar75 = ((shdr.p_)->sh_flags & 0x200) == 0;
                pSVar51 = (Sized_relobj_file<64,_false> *)SVar49.p_;
                if (bVar75) {
                  pSVar51 = (Sized_relobj_file<64,_false> *)0xd;
                  pbVar65 = pbVar70;
                  pbVar72 = (byte *)".gnu.linkonce";
                  do {
                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;
                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);
                    bVar29 = *pbVar65 < *pbVar72;
                    bVar75 = *pbVar65 == *pbVar72;
                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                  } while (bVar75);
                  if ((!bVar29 && !bVar75) == bVar29) {
                    piVar62[-4] = (int)&shdr;
                    piVar62[-5] = (int)pbVar70;
                    piVar62[-6] = (int)SVar49.p_;
                    piVar62[-7] = (int)layout;
                    piVar62[-8] = (int)this;
                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */
                    piVar62[-9] = 0xa352c;
                    bVar29 = include_linkonce_section
                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],
                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],
                                        (Shdr<64,_false> *)piVar62[-4]);
                    pSVar51 = extraout_ECX_11;
                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;
                    uVar69 = i;
                    if (!bVar29) goto LAB_000a2c3a;
                  }
                }
LAB_000a2583:
                pIVar64 = layout->incremental_inputs_;
                SVar49.p_ = (Shdr_data<64> *)pSVar51;
                if ((pIVar64 == (Incremental_inputs *)0x0) || ((char)ppuVar57 != '\0'))
                goto LAB_000a22b0;
LAB_000a259c:
                piVar62[-4] = (int)local_124;
                piVar62[-5] = 0xa25b0;
                bVar29 = can_incremental_update(piVar62[-4]);
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_00;
                ppuVar57 = local_120;
                if (bVar29) {
                  local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4);
                  local_154 = (undefined4)(shdr.p_)->sh_size;
                  pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                            compressed_sections_;
                  if (pCVar10 != (Compressed_section_map *)0x0) {
                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;
                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;
                    p_Var52 = &p_Var1->_M_header;
                    if (p_Var73 != (_Base_ptr)0x0) {
                      do {
                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {
                          p_Var73 = p_Var53->_M_left;
                          p_Var52 = p_Var53;
                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;
                        }
                        pp_Var2 = &p_Var53->_M_right;
                        p_Var73 = *pp_Var2;
                        p_Var53 = p_Var52;
                      } while (*pp_Var2 != (_Base_ptr)0x0);
LAB_000a260d:
                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&
                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {
                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);
                        local_150 = 0;
                      }
                    }
                  }
                  piVar62[-3] = local_150;
                  piVar62[-4] = local_154;
                  piVar62[-5] = (int)pbVar70;
                  piVar62[-6] = i;
                  piVar62[-7] = (int)this;
                  piVar62[-8] = (int)pIVar64;
                  piVar62[-9] = 0xa263f;
                  Incremental_inputs::report_input_section
                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],
                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));
                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01;
                }
                goto LAB_000a22b0;
              }
              piVar62[-2] = (int)SVar49.p_;
              piVar62[-3] = (int)layout;
              piVar62[-4] = (int)this;
                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */
              piVar62[-5] = 0xa326f;
              layout_gnu_property_section
                        ((Sized_relobj_file<64,_false> *)piVar62[-4],(Layout *)piVar62[-3],
                         piVar62[-2]);
              ppuVar57 = (undefined **)(i >> 5);
              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =
                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                   _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] | 1 << ((byte)i & 0x1f);
              SVar49.p_ = (Shdr_data<64> *)i;
              uVar69 = i;
            }
            else {
              piVar62[-3] = iVar50;
              piVar62[-4] = (int)pbVar70;
              piVar62[-5] = 0xa24ed;
              iVar50 = strcmp((char *)piVar62[-4],(char *)piVar62[-3]);
              bVar29 = iVar50 == 0;
              if (!bVar29) goto LAB_000a2b98;
LAB_000a24fe:
              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =
                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                   _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] |
                   1 << (bVar48 & 0x1f);
              if (local_124 == (Sized_relobj_file<64,_false> *)0x7) goto LAB_000a2bcb;
LAB_000a2522:
              bVar29 = (1 << (bVar48 & 0x1f) &
                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.
                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p
                       [(uint)SVar49.p_ >> 5]) != 0;
              ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);
              if (!bVar29) {
                ppuVar57 = (undefined **)0x0;
                if (local_124 != (Sized_relobj_file<64,_false> *)0x11) goto LAB_000a2551;
                piVar62[-4] = (int)&omit;
                piVar62[-5] = local_148;
                piVar62[-6] = (int)local_144;
                piVar62[-7] = (int)local_160;
                piVar62[-8] = (int)pbVar70;
                piVar62[-9] = (int)SVar49.p_;
                piVar62[-10] = (int)layout;
                piVar62[-0xb] = (int)symtab;
                piVar62[-0xc] = (int)this;
                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */
                piVar62[-0xd] = 0xa3371;
                bVar29 = include_section_group
                                   ((Sized_relobj_file<64,_false> *)piVar62[-0xc],
                                    (Symbol_table *)piVar62[-0xb],(Layout *)piVar62[-10],piVar62[-9]
                                    ,(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],
                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4]);
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_10;
                uVar69 = i;
                if (!bVar29) goto LAB_000a2c3a;
                ppuVar57 = (undefined **)0x0;
                pSVar51 = extraout_ECX_10;
                goto LAB_000a2583;
              }
LAB_000a2c18:
              pIVar64 = layout->incremental_inputs_;
              uVar69 = (uint)SVar49.p_;
              if (pIVar64 == (Incremental_inputs *)0x0) {
                if ((char)ppuVar57 == '\0') goto LAB_000a22b0;
              }
              else if ((char)ppuVar57 == '\0') goto LAB_000a259c;
            }
LAB_000a2c3a:
            i = uVar69;
            (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
            super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
            _M_impl._M_start[i] = (Output_section *)0x0;
            puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                      ._M_impl._M_start;
            *(undefined4 *)(puVar18 + i) = 0xffffffff;
            *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;
          }
LAB_000a23a1:
          uVar63 = i + 1;
          pSVar67 = local_134 + 1;
          i = uVar63;
          if (uVar6 <= uVar63) goto LAB_000a2740;
          shdr.p_ = pSVar67;
          uVar69 = pSVar67->sh_name;
          local_124 = (Sized_relobj_file<64,_false> *)local_134[1].sh_type;
          puVar59 = (undefined1 *)piVar62;
          local_134 = pSVar67;
        } while (uVar69 < local_148);
      }
      uVar6 = i;
      shdr.p_ = local_134;
      *(char **)(puVar59 + -0x10) = "bad section name offset for section %u: %lu";
      *(undefined4 *)(puVar59 + -0x14) = 0xa3657;
      uVar39 = gettext();
      *(uint *)(puVar59 + -4) = uVar69;
      *(uint *)(puVar59 + -8) = uVar6;
      *(undefined4 *)(puVar59 + -0xc) = uVar39;
      *(Sized_relobj_file<64,_false> **)(puVar59 + -0x10) = this;
      *(undefined4 *)(puVar59 + -0x14) = 0xa3665;
      Object::error(*(Object **)(puVar59 + -0x10),*(char **)(puVar59 + -0xc));
      piVar62 = (int *)puVar59;
    }
    if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl
        ._M_start != (pointer)0x0) {
      *(pointer *)((int)piVar62 + -0x10) =
           debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
           _M_impl._M_start;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28af;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
    if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
        _M_start != (pointer)0x0) {
      *(pointer *)((int)piVar62 + -0x10) =
           debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
           _M_impl._M_start;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28cb;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
    if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
        _M_start != (pointer)0x0) {
      *(pointer *)((int)piVar62 + -0x10) =
           eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl
           ._M_start;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28e7;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
    if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
        _M_start != (pointer)0x0) {
      *(pointer *)((int)piVar62 + -0x10) =
           reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
           _M_start;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa2903;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
    if (omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
        super__Bit_iterator_base._M_p != (_Bit_type *)0x0) {
      *(_Bit_type **)((int)piVar62 + -0x10) =
           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start
           .super__Bit_iterator_base._M_p;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa291f;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
  }
  *(undefined4 **)((int)piVar62 + -0x10) = puVar31;
  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2938;
  operator_delete(*(void **)((int)piVar62 + -0x10));
  *(undefined4 **)((int)piVar62 + -0x10) = puVar30;
  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2944;
  operator_delete(*(void **)((int)piVar62 + -0x10));
  return;
}



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

void FUN_000a1d70(uint *******param_1,int param_2,int param_3,int *param_4)

{
  uint ******ppppppuVar1;
  uint *puVar2;
  byte bVar3;
  uint ***pppuVar4;
  int iVar5;
  code *pcVar6;
  char cVar7;
  undefined4 *puVar8;
  size_t sVar9;
  uint uVar10;
  int *piVar11;
  undefined4 uVar12;
  uint ******ppppppuVar13;
  uint ****ppppuVar14;
  uint *****pppppuVar15;
  undefined *puVar16;
  uint ******ppppppuVar17;
  uint *****pppppuVar18;
  uint *******extraout_ECX;
  int iVar19;
  uint *******extraout_ECX_00;
  uint ******ppppppuVar20;
  uint *******extraout_ECX_01;
  uint *******extraout_ECX_02;
  uint *******extraout_ECX_03;
  uint *******extraout_ECX_04;
  uint *******extraout_ECX_05;
  uint *******extraout_ECX_06;
  uint *******extraout_ECX_07;
  uint *******extraout_ECX_08;
  uint *******extraout_ECX_09;
  uint *******extraout_ECX_10;
  uint *******extraout_ECX_11;
  uint *******extraout_ECX_12;
  uint *******extraout_ECX_13;
  uint *******extraout_ECX_14;
  uint *******extraout_ECX_15;
  uint *******extraout_ECX_16;
  uint *******extraout_ECX_17;
  uint *******extraout_ECX_18;
  uint *******extraout_ECX_19;
  uint *******extraout_ECX_20;
  uint *******extraout_ECX_21;
  uint *******extraout_ECX_22;
  uint *******extraout_ECX_23;
  uint *******extraout_ECX_24;
  uint *******extraout_ECX_25;
  uint *******extraout_ECX_26;
  uint *******extraout_ECX_27;
  uint *******extraout_ECX_28;
  uint *******extraout_ECX_29;
  uint *******extraout_ECX_30;
  uint *******extraout_ECX_31;
  uint ******ppppppuVar21;
  uint *******pppppppuVar22;
  undefined1 *puVar23;
  undefined1 *puVar24;
  undefined1 *puVar26;
  uint *******pppppppuVar27;
  uint *******pppppppuVar28;
  uint *******pppppppuVar29;
  byte *pbVar30;
  byte *pbVar31;
  uint *******pppppppuVar32;
  bool bVar33;
  bool bVar34;
  bool bVar35;
  byte bVar36;
  undefined1 auStack_1ac [8];
  uint *******local_1a4;
  uint *******local_1a0;
  int local_19c;
  uint *******local_198;
  uint *******local_194;
  uint *******local_190;
  uint *******local_18c;
  uint ******local_188;
  uint *******local_184;
  uint ******local_180;
  uint *******local_17c;
  uint *******local_178;
  uint *******local_174;
  uint *******local_170;
  uint *******local_16c;
  uint local_168;
  uint ******local_164;
  uint ******local_160;
  undefined4 *local_15c;
  undefined4 *local_158;
  uint *******local_154;
  uint ******local_150;
  int local_14c;
  uint ******local_148;
  uint ******local_144;
  uint *******local_140;
  uint *******local_13c;
  char local_138;
  byte local_137;
  byte local_136;
  char local_135;
  uint *******local_134;
  uint *******local_130;
  uint *******local_12c;
  undefined4 local_128;
  uint *******local_124;
  uint *******local_120;
  int *local_11c;
  undefined4 local_118;
  int local_110;
  char local_10c [4];
  undefined4 local_108;
  uint *******local_100 [3];
  undefined1 local_f1;
  uint *******local_f0;
  uint *******local_ec;
  uint *******local_e8;
  uint ******local_e4;
  uint *******local_e0;
  uint *******local_dc;
  uint *******local_d8;
  int *local_d4;
  int *local_d0;
  int *local_cc;
  int *local_c8;
  int *local_c4;
  int *local_c0;
  int *local_bc;
  int *local_b8;
  int *local_b4;
  void *local_b0;
  undefined4 local_ac;
  void *local_a8;
  uint local_a4;
  byte *local_a0;
  uint *******local_9c;
  uint *******local_98;
  uint ******local_94 [4];
  uint *******local_84;
  uint *******local_80;
  uint ******local_7c [4];
  uint *******local_6c;
  undefined4 local_68;
  uint *******local_64;
  uint ******local_60;
  uint *******local_5c;
  uint ******local_58;
  uint ******local_54;
  uint ******local_50;
  uint ******local_4c;
  uint ******local_48;
  uint ******local_44;
  uint ******local_40;
  uint ******local_3c;
  uint ******local_38;
  uint ******local_34;
  uint ******local_30;
  uint ******local_2c;
  uint ******local_28;
  uint ******local_24;
  undefined1 *puVar25;
  
  bVar36 = 0;
  local_120 = (uint *******)&__DT_PLTGOT;
  local_13c = (uint *******)&DAT_00302378;
  if (*(int *)(DAT_00302378 + 0xc) == 0) {
    local_13c = (uint *******)&DAT_00302378;
    local_120 = (uint *******)&__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);
  }
  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);
  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);
  local_130 = (uint *******)param_1[10];
  pppppppuVar22 = (uint *******)&DAT_00302378;
  pppppppuVar29 = (uint *******)&__DT_PLTGOT;
  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;
  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {
    if (pppppuVar15[0x164d] == (uint ****)0x0) {
      local_136 = *(byte *)(param_3 + 0x1ce);
      pppppppuVar22 = (uint *******)(uint)local_136;
      if (local_136 == 0) {
        if (local_130 == (uint *******)0x0) {
          return;
        }
        local_148 = (uint ******)param_4[2];
        local_160 = *(uint *******)(*param_4 + 8);
        local_164 = (uint ******)param_4[3];
        if (local_164 != (uint ******)0x0) {
          local_164 = (uint ******)local_164[2];
        }
        local_17c = (uint *******)param_4[4];
        local_180 = (uint ******)param_4[6];
        if (local_180 != (uint ******)0x0) {
          local_180 = (uint ******)local_180[2];
        }
        local_138 = '\0';
        local_135 = '\0';
        local_190 = (uint *******)0x0;
        local_188 = (uint ******)param_4[7];
        local_144 = *(uint *******)(param_4[1] + 8);
        local_136 = '\0';
        goto LAB_000a1e71;
      }
      local_190 = (uint *******)param_1[0x15];
      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;
      local_190 = (uint *******)0x0;
    }
    else {
      pppppppuVar22 = (uint *******)param_1[0x15];
      local_190 = pppppppuVar22;
      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;
    }
LAB_000a3448:
    if (param_4 == (int *)0x0) {
      local_13c = (uint *******)&DAT_00302378;
      local_120 = (uint *******)&__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);
    }
    if (local_130 == (uint *******)0x0) {
      return;
    }
    local_13c = (uint *******)&DAT_00302378;
    local_120 = (uint *******)&__DT_PLTGOT;
    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);
    local_190 = pppppppuVar22;
    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);
    local_160 = *pppppppuVar22;
    param_1[0x15] = (uint ******)pppppppuVar22;
    local_148 = pppppppuVar22[2];
    local_164 = pppppppuVar22[3];
    local_17c = (uint *******)pppppppuVar22[4];
    local_180 = pppppppuVar22[6];
    pppppuVar15 = (*local_13c)[2];
    local_188 = pppppppuVar22[7];
    local_144 = pppppppuVar22[1];
    pppppppuVar22 = local_13c;
    pppppppuVar29 = local_120;
    if (pppppuVar15 == (uint *****)0x0) {
LAB_000a34ee:
      local_120 = pppppppuVar29;
      local_13c = pppppppuVar22;
                    /* WARNING: Subroutine does not return */
      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);
    }
    local_138 = '\x01';
    local_135 = '\0';
    local_136 = '\x01';
  }
  else {
    local_190 = (uint *******)param_1[0x15];
    pppppppuVar22 = param_1;
    if (local_190 == (uint *******)0x0) goto LAB_000a3448;
    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {
      local_13c = (uint *******)&DAT_00302378;
      local_120 = (uint *******)&__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);
    }
    if (pppppuVar15[0x164d] != (uint ****)0x0) {
LAB_000a33a4:
      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {
        local_13c = (uint *******)&DAT_00302378;
        local_120 = (uint *******)&__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);
      }
    }
LAB_000a1e0a:
    if (local_130 == (uint *******)0x0) {
      return;
    }
    local_138 = '\x01';
    local_135 = '\x01';
    local_160 = *local_190;
    local_148 = local_190[2];
    local_136 = '\0';
    local_164 = local_190[3];
    local_17c = (uint *******)local_190[4];
    local_180 = local_190[6];
    local_188 = local_190[7];
    local_144 = local_190[1];
    local_13c = (uint *******)&DAT_00302378;
    local_120 = (uint *******)&__DT_PLTGOT;
  }
LAB_000a1e71:
  pppppppuVar29 = local_124;
  pppppppuVar22 = local_130;
  ppppuVar14 = pppppuVar15[0x164f];
  local_124 = (uint *******)((uint)local_124 & 0xffffff00);
  if (ppppuVar14 != (uint ****)0x0) {
    local_124._1_3_ = SUB43(pppppppuVar29,1);
    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));
    if (*(char *)(ppppuVar14 + 0x18) != '\0') {
      local_124 = (uint *******)
                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);
    }
  }
  if ((uint *******)0x3fffffff < local_130) {
                    /* WARNING: Subroutine does not return */
    FUN_001c5fe0();
  }
  local_14c = (int)local_130 * 4;
  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);
  iVar19 = local_14c;
  puVar8 = local_158;
  if (pppppppuVar22 != (uint *******)0x0) {
    do {
      *puVar8 = 0;
      puVar8 = puVar8 + 1;
    } while (puVar8 != local_158 + (int)pppppppuVar22);
  }
                    /* try { // try from 000a1efd to 000a1f01 has its CatchHandler @ 000a4675 */
  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);
  puVar24 = auStack_1ac;
  puVar26 = auStack_1ac;
  pppppppuVar22 = (uint *******)(local_160 + 0x10);
  puVar8 = local_15c;
  local_134 = pppppppuVar22;
  if (local_130 != (uint *******)0x0) {
    do {
      *puVar8 = 0;
      puVar8 = puVar8 + 1;
    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));
    if (local_130 != (uint *******)0x1) {
      pppppppuVar29 = (uint *******)0x1;
      local_140 = (uint *******)0x0;
      local_16c = local_120 + -0x3748f;
      local_154 = param_1 + 0x24;
      do {
        while( true ) {
          if ((char)local_124 != '\0') {
            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));
          }
          ppppppuVar21 = pppppppuVar22[1];
          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;
LAB_000a1f88:
          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);
          pppppppuVar22 = pppppppuVar22 + 0x10;
          if (pppppppuVar29 == local_130) goto LAB_000a2028;
        }
        local_12c = (uint *******)pppppppuVar22[0xb];
        if ((uint *******)0xfeff < local_12c) {
                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */
          FUN_0004dee0(local_154);
          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);
        }
        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {
          uVar12 = gettext(local_16c);
          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);
          goto LAB_000a1f88;
        }
        piVar11 = local_158 + (int)local_12c;
        if (*piVar11 == 0) {
          *piVar11 = (int)pppppppuVar29;
          local_15c[(int)local_12c] = ppppppuVar21;
          goto LAB_000a1f88;
        }
        *piVar11 = -1;
        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);
        pppppppuVar22 = pppppppuVar22 + 0x10;
      } while (pppppppuVar29 != local_130);
      goto LAB_000a2028;
    }
  }
  local_140 = (uint *******)0x0;
LAB_000a2028:
  if (local_135 == '\0') {
    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);
    if (pppppppuVar22 < local_130) {
      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);
    }
    else if ((local_130 < pppppppuVar22) &&
            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),
            param_1[0xf] != ppppppuVar21)) {
      param_1[0xf] = ppppppuVar21;
    }
    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);
    if (pppppppuVar22 < local_130) {
                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */
      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);
    }
    else if ((local_130 < pppppppuVar22) &&
            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {
      param_1[0x22] = ppppppuVar21;
    }
  }
  if (param_1[7] == (uint ******)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */
    FUN_000917c0();
  }
                    /* try { // try from 000a204d to 000a2051 has its CatchHandler @ 000a46c7 */
  local_137 = FUN_0005cf90(param_1[7]);
  if (local_137 == 0) {
    if (local_140 != (uint *******)0x0) {
      if ((*local_13c)[2] == (uint *****)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */
        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);
      }
      ppppuVar14 = (*local_13c)[2][0x164f];
      local_ec = param_1;
      pppuVar4 = ppppuVar14[8];
      if (pppuVar4 == ppppuVar14[9]) {
                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */
        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);
      }
      else {
        *pppuVar4 = (uint **)param_1;
        ppppuVar14[8] = pppuVar4 + 1;
      }
      if ((uint *******)0x28f5c28 < local_140) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */
        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));
      }
      ppppppuVar21 = param_1[0x48];
      local_12c = (uint *******)param_1[0x4a];
      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {
        ppppppuVar17 = param_1[0x49];
        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);
        local_140 = (uint *******)((int)local_140 * 100);
                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */
        local_12c = (uint *******)FUN_0017ebf0(local_140);
        if (ppppppuVar21 != ppppppuVar17) {
          ppppppuVar13 = ppppppuVar21 + 2;
          pppppppuVar22 = local_12c;
          do {
            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);
            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {
              pppppppuVar22[2] = (uint ******)*ppppppuVar13;
              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];
              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];
              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];
            }
            else {
              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];
              pppppppuVar22[2] = (uint ******)*ppppppuVar13;
            }
            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];
            ppppppuVar13[-2] = (uint *****)ppppppuVar13;
            ppppppuVar20 = ppppppuVar13 + 0x19;
            ppppppuVar13[-1] = (uint *****)0x0;
            *(undefined1 *)ppppppuVar13 = 0;
            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];
            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];
            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];
            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];
            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];
            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];
            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];
            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];
            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];
            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];
            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];
            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];
            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];
            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];
            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];
            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];
            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];
            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];
            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];
            ppppppuVar13 = ppppppuVar20;
            pppppppuVar22 = pppppppuVar22 + 0x19;
          } while (ppppppuVar21 +
                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &
                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);
        }
        ppppppuVar21 = param_1[0x49];
        ppppppuVar17 = param_1[0x48];
        if (ppppppuVar21 != ppppppuVar17) {
          do {
            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {
              FUN_001807a0(*ppppppuVar17);
            }
            ppppppuVar17 = ppppppuVar17 + 0x19;
          } while (ppppppuVar21 != ppppppuVar17);
          ppppppuVar17 = param_1[0x48];
        }
        if (ppppppuVar17 != (uint ******)0x0) {
          FUN_001807a0(ppppppuVar17);
        }
        param_1[0x48] = (uint ******)local_12c;
        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);
        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);
      }
      *(byte *)((int)param_1 + 0x11d) = 1;
    }
    pppppppuVar29 = local_130;
    local_b0 = (void *)0x0;
    local_ac = 0;
    local_a8 = (void *)0x0;
    local_a4 = 0;
    local_a0 = (byte *)0x0;
    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);
                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */
    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);
    pppppppuVar22 = local_120;
    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);
    local_a4 = (uint)pppppppuVar29 & 0x1f;
    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);
    local_ac = 0;
    memset(local_b0,0,(size_t)pppppppuVar27);
    pppppuVar15 = (*local_13c)[2];
    if (pppppuVar15 == (uint *****)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */
      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);
    }
    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);
    pppppppuVar29 = (uint *******)(uint)bVar3;
    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);
    if (bVar3 == 0) {
      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);
    }
    local_14c = CONCAT31(local_14c._1_3_,bVar3);
    local_e0 = (uint *******)0x0;
    local_dc = (uint *******)0x0;
    local_d8 = (uint *******)0x0;
    local_d4 = (int *)0x0;
    local_d0 = (int *)0x0;
    local_cc = (int *)0x0;
    local_c8 = (int *)0x0;
    local_c4 = (int *)0x0;
    local_c0 = (int *)0x0;
    local_bc = (int *)0x0;
    local_b8 = (int *)0x0;
    local_b4 = (int *)0x0;
    local_f0 = (uint *******)0x1;
    if (local_130 < (uint *******)0x2) {
      local_16c = (uint *******)0x0;
      local_168 = 0;
      pppppppuVar28 = local_134;
LAB_000a2740:
      local_134 = pppppppuVar28;
      if (local_135 == '\0') {
        *(uint ********)(puVar24 + -0xc) = param_1;
        *(int *)(puVar24 + -0x10) = param_3;
        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;
        FUN_0007bc30();
        uVar10 = (uint)local_137;
        *(uint ********)(puVar24 + -0x10) = param_1;
        *(uint *)(puVar24 + -0x14) = local_168;
        *(uint ********)(puVar24 + -0x18) = local_16c;
        *(uint *)(puVar24 + -0x1c) = uVar10;
        *(int *)(puVar24 + -0x20) = param_3;
        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;
        FUN_0007bb30();
        pppppppuVar29 = extraout_ECX_02;
      }
      pppppppuVar22 = local_120;
      if (local_136 == '\0') {
        if (local_d0 != local_d4) {
          local_178 = (uint *******)&local_84;
          piVar11 = local_d4;
          do {
            iVar19 = *piVar11;
            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];
            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);
            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];
            *(uint ********)(puVar24 + -0x14) = local_178;
            *(int *)(puVar24 + -0x18) = iVar19;
            *(uint *******)(puVar24 + -0x1c) = local_188;
            *(uint *******)(puVar24 + -0x20) = local_180;
            *(uint ********)(puVar24 + -0x24) = local_17c;
            *(uint *******)(puVar24 + -0x28) = local_164;
            *(int *)(puVar24 + -0x2c) = param_3;
            *(uint ********)(puVar24 + -0x30) = param_1;
                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */
            local_84 = pppppppuVar22;
            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;
            FUN_00096690();
            piVar11 = piVar11 + 1;
            pppppppuVar29 = extraout_ECX_13;
          } while (local_d0 != piVar11);
        }
      }
      else if (local_d0 != local_d4) {
        *(uint ********)(puVar24 + -4) = pppppppuVar27;
        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;
        *(undefined4 *)(puVar24 + -0xc) = 0x751;
        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;
                    /* WARNING: Subroutine does not return */
        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;
        FUN_0005f0b0();
      }
      if ((char)local_14c != '\0') {
        ppppppuVar21 = param_1[10];
        *(undefined4 *)(puVar24 + -0x10) = 0xc;
                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */
        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;
        ppppppuVar17 = (uint ******)FUN_0017ebf0();
        *ppppppuVar17 = (uint *****)0x0;
        ppppppuVar17[1] = (uint *****)0x0;
        ppppppuVar17[2] = (uint *****)0x0;
        if (ppppppuVar21 == (uint ******)0x0) {
          pppppuVar15 = (uint *****)0x0;
          pppppppuVar29 = extraout_ECX_27;
        }
        else {
          if ((uint ******)0x3fffffff < ppppppuVar21) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */
            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;
            FUN_001c5fe0();
          }
          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;
                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */
          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;
          pppppuVar18 = (uint *****)FUN_0017ebf0();
          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;
          *ppppppuVar17 = pppppuVar18;
          ppppppuVar17[2] = pppppuVar15;
          do {
            *pppppuVar18 = (uint ****)0x0;
            pppppuVar18 = pppppuVar18 + 1;
            pppppppuVar29 = extraout_ECX_28;
          } while (pppppuVar15 != pppppuVar18);
        }
        ppppppuVar17[1] = pppppuVar15;
        param_1[0x11] = ppppppuVar17;
      }
      pppppppuVar22 = local_120;
      if (local_138 == '\0') {
        if (local_e0 != local_dc) {
          local_12c = local_e0;
          local_134 = param_1 + 0x24;
          local_13c = (uint *******)&local_9c;
          do {
            pppppppuVar22 = (uint *******)*local_12c;
            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);
            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];
            local_9c = pppppppuVar28;
            if ((uint *******)0xfeff < pppppppuVar27) {
              *(uint ********)(puVar24 + -0x10) = local_134;
              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;
              FUN_0004dee0();
              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);
              pppppppuVar29 = extraout_ECX_17;
            }
            pppppppuVar32 = local_120;
            if (pppppppuVar27 < local_130) {
              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];
              if (local_124 == (uint *******)0x2) {
                if (local_135 == '\0') {
                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);
                  local_140 = (uint *******)local_9c[1];
                  local_194 = local_7c;
                  local_84 = local_7c;
                  puVar16 = (undefined *)0xffffffff;
                  local_124 = param_1 + 0x4b;
                  if (ppppppuVar21 != (uint ******)0x0) {
                    local_148 = ppppppuVar21;
                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;
                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;
                    sVar9 = strlen(*(char **)(puVar24 + -0x10));
                    puVar16 = (undefined *)(sVar9 + (int)local_148);
                    ppppppuVar21 = local_148;
                  }
                  *(undefined4 *)(puVar24 + -4) = 0;
                  *(undefined **)(puVar24 + -8) = puVar16;
                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;
                  *(uint *********)(puVar24 + -0x10) = &local_84;
                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;
                  FUN_0004cf80();
                  local_68 = 0;
                  local_64 = (uint *******)0x0;
                  local_60 = *pppppppuVar28;
                  local_58 = pppppppuVar28[2];
                  local_54 = pppppppuVar28[3];
                  local_50 = pppppppuVar28[4];
                  local_4c = pppppppuVar28[5];
                  local_48 = pppppppuVar28[6];
                  local_44 = pppppppuVar28[7];
                  local_40 = pppppppuVar28[8];
                  local_3c = pppppppuVar28[9];
                  local_38 = pppppppuVar28[10];
                  local_34 = pppppppuVar28[0xb];
                  local_30 = pppppppuVar28[0xc];
                  local_2c = pppppppuVar28[0xd];
                  local_28 = pppppppuVar28[0xe];
                  ppppppuVar21 = pppppppuVar28[0xf];
                  local_6c = pppppppuVar22;
                  *(uint *********)(puVar24 + -0xc) = &local_84;
                  *(uint ********)(puVar24 + -0x10) = local_124;
                  local_5c = local_140;
                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */
                  local_24 = ppppppuVar21;
                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;
                  FUN_000a10f0();
                  pppppppuVar29 = extraout_ECX_18;
                  if (local_84 != local_194) {
                    *(uint ********)(puVar24 + -0x10) = local_84;
                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;
                    FUN_001807a0();
                    pppppppuVar29 = extraout_ECX_19;
                  }
                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;
                  ppppppuVar21 = param_1[0x21];
                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;
                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;
                }
              }
              else if (local_124 == (uint *******)0x0) {
                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;
                ppppppuVar21 = param_1[0x21];
                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;
                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;
              }
              else {
                *(undefined4 *)(puVar24 + -0x10) = 0x14;
                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */
                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;
                ppppuVar14 = (uint ****)FUN_0017ebf0();
                *ppppuVar14 = (uint ***)0x0;
                ppppuVar14[1] = (uint ***)0x0;
                ppppuVar14[2] = (uint ***)0x0;
                ppppuVar14[3] = (uint ***)0x0;
                ppppuVar14[4] = (uint ***)0x0;
                if (param_1[10] <= pppppppuVar22) {
                  *(uint ********)(puVar24 + -4) = pppppppuVar32;
                  pppppppuVar22 = local_120;
                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;
                  *(undefined4 *)(puVar24 + -0xc) = 0x541;
                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);
                    /* WARNING: Subroutine does not return */
                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;
                  FUN_0005f0b0();
                }
                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;
                *(uint *****)(puVar24 + -0xc) = ppppuVar14;
                *(uint ********)(puVar24 + -0x10) = local_124;
                *(uint ********)(puVar24 + -0x14) = local_13c;
                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;
                *(uint ********)(puVar24 + -0x1c) = param_1;
                *(int *)(puVar24 + -0x20) = param_3;
                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;
                pppppuVar15 = (uint *****)FUN_0008a810();
                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;
                ppppppuVar21 = param_1[0x21];
                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;
                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;
                pppppppuVar29 = extraout_ECX_16;
              }
            }
            local_12c = local_12c + 1;
          } while (local_dc != local_12c);
        }
      }
      else if (local_e0 != local_dc) {
        *(uint ********)(puVar24 + -4) = pppppppuVar29;
        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;
        *(undefined4 *)(puVar24 + -0xc) = 0x76c;
        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;
                    /* WARNING: Subroutine does not return */
        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;
        FUN_0005f0b0();
      }
      pppppppuVar22 = local_120;
      if (local_136 == '\0') {
        if (local_c8 != local_c4) {
          local_128 = 0;
          local_12c = local_17c;
          piVar11 = local_c8;
          do {
            iVar19 = *piVar11;
            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];
            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];
            *(int *)(puVar24 + -0x18) = iVar19;
            *(undefined4 *)(puVar24 + -0x1c) = local_128;
            *(uint ********)(puVar24 + -0x20) = local_12c;
            *(uint *******)(puVar24 + -0x24) = local_164;
            *(uint ********)(puVar24 + -0x28) = param_1;
            *(undefined4 *)(puVar24 + -0x2c) = 0;
            *(int *)(puVar24 + -0x30) = param_3;
                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */
            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;
            FUN_0008e680();
            piVar11 = piVar11 + 1;
          } while (local_c4 != piVar11);
        }
        if (local_b8 != local_bc) {
          local_128 = 0;
          local_12c = local_17c;
          piVar11 = local_bc;
          do {
            puVar8 = local_158;
            iVar19 = *piVar11;
            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];
            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];
            *(int *)(puVar24 + -0x18) = iVar19;
            *(undefined4 *)(puVar24 + -0x1c) = local_128;
            *(uint ********)(puVar24 + -0x20) = local_12c;
            *(uint *******)(puVar24 + -0x24) = local_164;
            *(uint ********)(puVar24 + -0x28) = param_1;
            *(undefined4 *)(puVar24 + -0x2c) = 1;
            *(int *)(puVar24 + -0x30) = param_3;
            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;
            FUN_0008e680();
            piVar11 = piVar11 + 1;
          } while (local_b8 != piVar11);
        }
      }
      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {
        *(uint ********)(puVar24 + -4) = pppppppuVar29;
        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;
        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;
        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;
                    /* WARNING: Subroutine does not return */
        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;
        FUN_0005f0b0();
      }
      if (local_135 == '\0') {
        iVar19 = *param_4;
        if (iVar19 != 0) {
          *(int *)(puVar24 + -0x10) = iVar19;
          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;
          FUN_0005cea0();
          *(undefined4 *)(puVar24 + -0xc) = 0xc;
          *(int *)(puVar24 + -0x10) = iVar19;
          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;
          FUN_00180780();
        }
        iVar19 = param_4[1];
        *param_4 = 0;
        if (iVar19 != 0) {
          *(int *)(puVar24 + -0x10) = iVar19;
          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;
          FUN_0005cea0();
          *(undefined4 *)(puVar24 + -0xc) = 0xc;
          *(int *)(puVar24 + -0x10) = iVar19;
          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;
          FUN_00180780();
        }
        param_4[1] = 0;
      }
      else {
        if (*local_190 != (uint ******)0x0) {
          *(uint *******)(puVar24 + -0x10) = *local_190;
          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;
          FUN_00180740();
        }
        if (local_190[1] != (uint ******)0x0) {
          *(uint *******)(puVar24 + -0x10) = local_190[1];
          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;
          FUN_00180740();
        }
        if (local_190[3] != (uint ******)0x0) {
          *(uint *******)(puVar24 + -0x10) = local_190[3];
          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;
          FUN_00180740();
        }
        if (local_190[6] != (uint ******)0x0) {
          *(uint *******)(puVar24 + -0x10) = local_190[6];
          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;
          FUN_00180740();
        }
        param_1[0x15] = (uint ******)0x0;
      }
    }
    else {
      local_ec = local_134;
      ppppppuVar21 = (uint ******)local_160[0x10];
      local_124 = (uint *******)local_160[0x11];
      if (ppppppuVar21 < local_148) {
        local_16c = (uint *******)0x0;
        local_168 = 0;
        local_1a0 = local_120 + 0x122;
        local_1a4 = local_120 + 0x122;
        puVar26 = auStack_1ac;
        do {
          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);
          local_ec = local_134;
          if (local_135 == '\0') {
            *(int *)(puVar26 + -4) = param_2;
            *(uint ********)(puVar26 + -8) = local_f0;
            *(uint ********)(puVar26 + -0xc) = local_12c;
            *(uint ********)(puVar26 + -0x10) = param_1;
            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;
            cVar7 = FUN_000925b0();
            bVar33 = cVar7 == '\0';
            bVar35 = cVar7 == '\x01';
            if (bVar35) {
              bVar33 = false;
              bVar35 = (char)local_140 == '\0';
              if (bVar35) {
                if ((*local_13c)[2] == (uint *****)0x0) {
                  *(undefined4 *)(puVar26 + -4) = 0;
                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;
                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;
                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */
                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;
                  FUN_0005f0b0();
                }
                bVar33 = false;
                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';
                if (bVar35) {
                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);
                  bVar33 = false;
                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);
                  bVar35 = *puVar2 == 0;
                }
              }
            }
            iVar19 = 0x10;
            pppppppuVar22 = local_12c;
            pbVar31 = (byte *)((int)local_120 + -0xdee8f);
            do {
              pbVar30 = pbVar31;
              if (iVar19 == 0) break;
              iVar19 = iVar19 + -1;
              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;
              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;
              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;
              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);
              pbVar31 = pbVar30;
            } while (bVar35);
            if ((!bVar33 && !bVar35) == bVar33) {
              local_137 = 1;
              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);
              local_168 = (uint)local_ec[3] | local_168;
              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);
              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);
            }
            *(uint ********)(puVar26 + -0xc) = local_12c;
            *(uint ********)(puVar26 + -0x10) = param_1;
            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;
            cVar7 = FUN_00091ac0();
            ppppppuVar21 = *local_13c;
            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {
              pppppuVar15 = ppppppuVar21[2];
              if (pppppuVar15 == (uint *****)0x0) {
                *(byte **)(puVar26 + -4) = pbVar30;
                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;
                *(undefined4 *)(puVar26 + -0xc) = 0x5c;
                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;
                FUN_0005f0b0();
              }
              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {
                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);
                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);
              }
            }
            pppppuVar15 = ppppppuVar21[3];
            if (pppppuVar15 == (uint *****)0x0) {
              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;
              *(undefined4 *)(puVar26 + -0xc) = 0x69;
              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;
              FUN_0005f0b0();
            }
            pppuVar4 = pppppuVar15[1][0x14];
            bVar33 = pppuVar4 == (uint ***)0x0;
            pppppppuVar29 = local_f0;
            if (bVar33) {
LAB_000a2b98:
              bVar35 = false;
              iVar19 = 0x10;
              pppppppuVar22 = local_12c;
              pbVar31 = (byte *)((int)local_120 + -0xdd173);
              do {
                if (iVar19 == 0) break;
                iVar19 = iVar19 + -1;
                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;
                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;
                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);
                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
              } while (bVar33);
              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;
              bVar33 = local_124 == (uint *******)0x7;
              if (!bVar33) goto LAB_000a2522;
LAB_000a2bcb:
              bVar35 = local_124 < (uint *******)0x7;
              iVar19 = 0x13;
              pppppppuVar22 = local_12c;
              pppppppuVar27 = local_120 + -0x37b91;
              do {
                if (iVar19 == 0) break;
                iVar19 = iVar19 + -1;
                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;
                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;
                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);
                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);
              } while (bVar33);
              if ((!bVar35 && !bVar33) != bVar35) {
                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &
                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;
                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);
                pppppppuVar27 = pppppppuVar29;
                if (bVar33) goto LAB_000a2c18;
LAB_000a2551:
                bVar33 = false;
                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;
                pppppppuVar29 = pppppppuVar27;
                if (bVar35) {
                  pppppppuVar29 = (uint *******)0xd;
                  pppppppuVar28 = local_12c;
                  pbVar31 = (byte *)((int)local_120 + -0xdd163);
                  do {
                    if (pppppppuVar29 == (uint *******)0x0) break;
                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;
                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;
                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                  } while (bVar35);
                  if ((!bVar33 && !bVar35) == bVar33) {
                    *(uint *********)(puVar26 + -0x10) = &local_ec;
                    *(uint ********)(puVar26 + -0x14) = local_12c;
                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;
                    *(int *)(puVar26 + -0x1c) = param_3;
                    *(uint ********)(puVar26 + -0x20) = param_1;
                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */
                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;
                    cVar7 = FUN_0009cac0();
                    pppppppuVar29 = extraout_ECX_11;
                    pppppppuVar27 = local_f0;
                    if (cVar7 == '\0') goto LAB_000a2c3a;
                  }
                }
LAB_000a2583:
                iVar19 = *(int *)(param_3 + 0x1d0);
                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;
LAB_000a259c:
                pppppppuVar22 = local_120;
                *(uint ********)(puVar26 + -0x10) = local_124;
                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;
                cVar7 = FUN_00066600();
                pppppppuVar27 = local_120;
                pppppppuVar29 = extraout_ECX_00;
                if (cVar7 != '\0') {
                  local_150 = local_ec[9];
                  local_154 = (uint *******)local_ec[8];
                  ppppppuVar21 = param_1[0xd];
                  if (ppppppuVar21 != (uint ******)0x0) {
                    ppppppuVar17 = (uint ******)ppppppuVar21[2];
                    ppppppuVar13 = ppppppuVar21 + 1;
                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {
                      do {
                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {
                          ppppppuVar17 = (uint ******)ppppppuVar20[2];
                          ppppppuVar13 = ppppppuVar20;
                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;
                        }
                        ppppppuVar1 = ppppppuVar20 + 3;
                        ppppppuVar17 = (uint ******)*ppppppuVar1;
                        ppppppuVar20 = ppppppuVar13;
                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);
LAB_000a260d:
                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {
                        local_154 = (uint *******)ppppppuVar20[5];
                        local_150 = (uint ******)0x0;
                      }
                    }
                  }
                  *(uint *******)(puVar26 + -0xc) = local_150;
                  *(uint ********)(puVar26 + -0x10) = local_154;
                  *(uint ********)(puVar26 + -0x14) = local_12c;
                  *(uint ********)(puVar26 + -0x18) = local_f0;
                  *(uint ********)(puVar26 + -0x1c) = param_1;
                  *(int *)(puVar26 + -0x20) = iVar19;
                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;
                  FUN_00067350();
                  pppppppuVar29 = extraout_ECX_01;
                  pppppppuVar22 = pppppppuVar27;
                }
                goto LAB_000a22b0;
              }
              *(uint ********)(puVar26 + -8) = pppppppuVar29;
              *(int *)(puVar26 + -0xc) = param_3;
              *(uint ********)(puVar26 + -0x10) = param_1;
                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */
              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;
              FUN_0009a280();
              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);
              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);
              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);
              pppppppuVar29 = local_f0;
              pppppppuVar27 = local_f0;
            }
            else {
              local_154 = local_f0;
              *(uint ****)(puVar26 + -0xc) = pppuVar4;
              *(uint ********)(puVar26 + -0x10) = local_12c;
              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;
              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));
              bVar33 = iVar19 == 0;
              pppppppuVar29 = local_154;
              if (!bVar33) goto LAB_000a2b98;
LAB_000a24fe:
              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);
              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);
              bVar33 = local_124 == (uint *******)0x7;
              if (bVar33) goto LAB_000a2bcb;
LAB_000a2522:
              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &
                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;
              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);
              if (!bVar33) {
                pppppppuVar22 = (uint *******)0x0;
                pppppppuVar27 = pppppppuVar29;
                if (local_124 != (uint *******)0x11) goto LAB_000a2551;
                *(void ***)(puVar26 + -0x10) = &local_b0;
                *(uint *******)(puVar26 + -0x14) = local_148;
                *(uint *******)(puVar26 + -0x18) = local_144;
                *(uint *******)(puVar26 + -0x1c) = local_160;
                *(uint ********)(puVar26 + -0x20) = local_12c;
                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;
                *(int *)(puVar26 + -0x28) = param_3;
                *(int *)(puVar26 + -0x2c) = param_2;
                *(uint ********)(puVar26 + -0x30) = param_1;
                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */
                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;
                cVar7 = FUN_0009e290();
                pppppppuVar29 = extraout_ECX_10;
                pppppppuVar27 = local_f0;
                if (cVar7 == '\0') goto LAB_000a2c3a;
                pppppppuVar22 = (uint *******)0x0;
                goto LAB_000a2583;
              }
LAB_000a2c18:
              iVar19 = *(int *)(param_3 + 0x1d0);
              pppppppuVar27 = pppppppuVar29;
              if (iVar19 == 0) {
                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;
              }
              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;
            }
LAB_000a2c3a:
            local_f0 = pppppppuVar27;
            param_1[0xe][(int)local_f0] = (uint *****)0x0;
            ppppppuVar21 = param_1[0x21];
            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;
            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;
            puVar24 = puVar26;
          }
          else {
LAB_000a22b0:
            puVar24 = puVar26;
            if (local_136 != '\0') {
              if ((*local_13c)[2] == (uint *****)0x0) {
                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;
                *(undefined4 *)(puVar26 + -0xc) = 0x5c;
                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;
                FUN_0005f0b0();
              }
              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {
                *(uint ********)(puVar26 + -0xc) = local_12c;
                *(uint ********)(puVar26 + -0x10) = param_1;
                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;
                cVar7 = FUN_00091d10();
                if (cVar7 == '\0') {
                  *(uint ********)(puVar26 + -8) = local_12c;
                  *(uint ********)(puVar26 + -0xc) = param_1;
                  *(int *)(puVar26 + -0x10) = param_3;
                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */
                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;
                  cVar7 = FUN_0007b5f0();
                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))
                  goto LAB_000a2c68;
                }
                else {
LAB_000a2c68:
                  local_84 = param_1;
                  local_80 = local_f0;
                  *(uint *********)(puVar26 + -0xc) = &local_84;
                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);
                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */
                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;
                  FUN_000a0800();
                }
                pppppppuVar22 = local_120;
                pppppppuVar27 = local_12c;
                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;
                *(uint ********)(puVar26 + -0x10) = local_12c;
                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;
                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));
                pppppppuVar28 = local_12c;
                pppppppuVar29 = extraout_ECX;
                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {
                  local_178 = (uint *******)&local_84;
                  iVar19 = *(int *)(param_2 + 0x158);
                  *(uint ********)(puVar26 + -0x10) = local_12c;
                  local_194 = local_7c;
                  local_19c = iVar19;
                  local_184 = local_f0;
                  local_84 = local_7c;
                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;
                  sVar9 = strlen(*(char **)(puVar26 + -0x10));
                  *(undefined4 *)(puVar26 + -4) = 0;
                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);
                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;
                  *(uint ********)(puVar26 + -0x10) = local_178;
                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;
                  FUN_0004cf80();
                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);
                  local_98 = local_184;
                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);
                  local_9c = param_1;
                  local_18c = pppppppuVar27;
                  if (pppppppuVar22 == (uint *******)0x0) {
LAB_000a320c:
                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;
                    *(uint *********)(puVar26 + -0x10) = &local_e8;
                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;
                    local_e8 = local_178;
                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;
                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;
                    *(uint *********)(puVar26 + -0x20) = local_100;
                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */
                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;
                    FUN_000a0360();
                    puVar26 = puVar26 + -4;
                    pppppppuVar27 = local_100[0];
                  }
                  else {
                    local_170 = local_84;
                    local_174 = pppppppuVar27;
                    local_154 = local_80;
LAB_000a30e5:
                    do {
                      pppppppuVar29 = (uint *******)pppppppuVar22[5];
                      pppppppuVar27 = local_154;
                      if (pppppppuVar29 <= local_154) {
                        pppppppuVar27 = pppppppuVar29;
                      }
                      if (pppppppuVar27 == (uint *******)0x0) {
LAB_000a3116:
                        iVar19 = (int)pppppppuVar29 - (int)local_154;
                      }
                      else {
                        *(uint ********)(puVar26 + -8) = pppppppuVar27;
                        *(uint ********)(puVar26 + -0xc) = local_170;
                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];
                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;
                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),
                                        *(size_t *)(puVar26 + -8));
                        if (iVar19 == 0) goto LAB_000a3116;
                      }
                      if (-1 < iVar19) {
                        local_174 = pppppppuVar22;
                        pppppppuVar22 = (uint *******)pppppppuVar22[2];
                        if (pppppppuVar22 == (uint *******)0x0) break;
                        goto LAB_000a30e5;
                      }
                      pppppppuVar22 = (uint *******)pppppppuVar22[3];
                    } while (pppppppuVar22 != (uint *******)0x0);
                    pppppppuVar27 = local_174;
                    if (local_18c == local_174) goto LAB_000a320c;
                    pppppppuVar22 = (uint *******)local_174[5];
                    pppppppuVar29 = pppppppuVar22;
                    if (local_154 <= pppppppuVar22) {
                      pppppppuVar29 = local_154;
                    }
                    if (pppppppuVar29 == (uint *******)0x0) {
LAB_000a3174:
                      iVar19 = (int)local_154 - (int)pppppppuVar22;
                    }
                    else {
                      *(uint ********)(puVar26 + -8) = pppppppuVar29;
                      *(uint *******)(puVar26 + -0xc) = local_174[4];
                      *(uint ********)(puVar26 + -0x10) = local_170;
                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;
                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),
                                      *(size_t *)(puVar26 + -8));
                      if (iVar19 == 0) goto LAB_000a3174;
                    }
                    if (iVar19 < 0) goto LAB_000a320c;
                  }
                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);
                  pppppppuVar22 = pppppppuVar27 + 10;
                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);
                  *(uint ********)(puVar26 + -4) = local_154;
                  *(uint *********)(puVar26 + -8) = &local_9c;
                  *(uint ********)(puVar26 + -0xc) = local_170;
                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;
                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;
                  local_174 = pppppppuVar22;
                  piVar11 = (int *)FUN_0008bfc0();
                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {
                    *(undefined4 *)(puVar26 + -0x10) = 0x10;
                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */
                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;
                    ppppppuVar21 = (uint ******)FUN_0017ebf0();
                    *ppppppuVar21 = (uint *****)0x0;
                    ppppppuVar21[1] = (uint *****)param_1;
                    ppppppuVar21[2] = (uint *****)local_184;
                    local_e4 = pppppppuVar27[0xf];
                    *(undefined4 *)(puVar26 + -0x10) = 1;
                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];
                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];
                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;
                    *(char **)(puVar26 + -0x20) = local_10c;
                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;
                    FUN_001c5e50();
                    pppppppuVar29 = extraout_ECX_09;
                    if (local_10c[0] != '\0') {
                      *(uint ********)(puVar26 + -0xc) = &local_e4;
                      *(undefined4 *)(puVar26 + -0x10) = local_108;
                      *(uint ********)(puVar26 + -0x14) = local_174;
                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */
                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;
                      FUN_0008f5f0();
                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);
                      pppppppuVar29 = extraout_ECX_12;
                    }
                    puVar26 = puVar26 + -4;
                    ppppppuVar21[3] = (uint *****)local_154;
                    pppppppuVar22 = (uint *******)((int)local_170 * 4);
                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {
                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];
                      pppppppuVar29 = (uint *******)pppppppuVar27[10];
                      pppppppuVar27[0xc] = ppppppuVar21;
                      if (*ppppppuVar21 != (uint *****)0x0) {
                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =
                             ppppppuVar21;
                      }
                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);
                    }
                    else {
                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];
                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;
                    }
                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);
                  }
                  pppppppuVar27 = local_120;
                  puVar24 = puVar26;
                  if (local_84 != local_194) {
                    *(uint ********)(puVar26 + -0x10) = local_84;
                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;
                    FUN_001807a0();
                    pppppppuVar29 = extraout_ECX_08;
                    pppppppuVar22 = pppppppuVar27;
                  }
                }
              }
            }
            if (((char)local_14c == '\0') ||
               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {
              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {
                local_154 = (uint *******)&local_ec;
                *(uint ********)(puVar24 + -0xc) = local_154;
                *(uint ********)(puVar24 + -0x10) = param_1;
                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */
                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;
                cVar7 = FUN_000964f0();
                pppppppuVar27 = local_f0;
                bVar33 = false;
                bVar35 = cVar7 == '\0';
                pppppppuVar29 = extraout_ECX_03;
                if (!bVar35) {
                  pppppppuVar29 = (uint *******)0xa;
                  pppppppuVar28 = local_12c;
                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);
                  do {
                    if (pppppppuVar29 == (uint *******)0x0) break;
                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;
                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;
                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                  } while (bVar35);
                  if ((!bVar33 && !bVar35) == bVar33) {
                    if ((char)local_140 == '\0') {
                      if (local_136 == '\0') {
                        if (*(byte *)((int)param_1 + 0x11d) == 0) {
                          if (local_d0 == local_cc) {
                            *(uint *********)(puVar24 + -8) = &local_f0;
                            *(int **)(puVar24 + -0xc) = local_d0;
                            puVar25 = puVar24 + -0x10;
                            *(int ***)(puVar24 + -0x10) = &local_d4;
                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */
                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;
                            FUN_00047200();
                            pppppppuVar29 = extraout_ECX_29;
                            goto LAB_000a3e57;
                          }
                          *local_d0 = (int)local_f0;
                          local_d0 = local_d0 + 1;
                        }
                        else {
                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];
                          local_124 = param_1 + 0x48;
                          uVar12 = local_158[(int)local_f0];
                          local_178 = (uint *******)&local_84;
                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;
                          FUN_000926b0();
                          local_6c = pppppppuVar27;
                          local_60 = *local_134;
                          local_58 = local_134[2];
                          local_54 = local_134[3];
                          local_50 = local_134[4];
                          local_4c = local_134[5];
                          local_48 = local_134[6];
                          local_44 = local_134[7];
                          local_40 = local_134[8];
                          local_3c = local_134[9];
                          local_38 = local_134[10];
                          local_34 = local_134[0xb];
                          local_30 = local_134[0xc];
                          local_2c = local_134[0xd];
                          local_28 = local_134[0xe];
                          local_24 = local_134[0xf];
                          *(uint ********)(puVar24 + -0xc) = local_178;
                          *(uint ********)(puVar24 + -0x10) = local_124;
                          local_5c = local_198;
                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */
                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;
                          local_68 = uVar12;
                          local_64 = pppppppuVar22;
                          FUN_000a10f0();
                          pppppppuVar28 = local_120;
                          pppppppuVar29 = extraout_ECX_04;
                          pppppppuVar22 = pppppppuVar27;
                          if (local_84 != local_7c) {
                            *(uint ********)(puVar24 + -0x10) = local_84;
                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;
                            FUN_001807a0();
                            pppppppuVar29 = extraout_ECX_05;
                            pppppppuVar22 = pppppppuVar28;
                          }
                        }
                      }
                      else {
                        param_1[0xe][(int)local_f0] =
                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);
                        ppppppuVar21 = param_1[0x21];
                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;
                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;
                      }
                      goto LAB_000a23a1;
                    }
                    local_124 = local_198;
                  }
                }
                puVar23 = puVar24;
                if (local_135 == '\0') {
                  iVar19 = (int)local_f0 * 4;
                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {
                    if (local_136 == '\0') goto LAB_000a2d10;
LAB_000a2b6b:
                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;
                    ppppppuVar21 = param_1[0x21];
                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;
                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;
                    puVar24 = puVar23;
                  }
                  else {
                    local_170 = (uint *******)local_15c[(int)local_f0];
                    uVar12 = local_158[(int)local_f0];
                    local_154 = param_1 + 0x48;
                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;
                    FUN_000926b0();
                    pppppppuVar22 = local_124;
                    local_6c = pppppppuVar27;
                    local_64 = local_170;
                    local_60 = *local_134;
                    local_58 = local_134[2];
                    local_54 = local_134[3];
                    local_50 = local_134[4];
                    local_4c = local_134[5];
                    local_48 = local_134[6];
                    local_44 = local_134[7];
                    local_40 = local_134[8];
                    local_3c = local_134[9];
                    local_38 = local_134[10];
                    local_34 = local_134[0xb];
                    local_30 = local_134[0xc];
                    local_2c = local_134[0xd];
                    local_28 = local_134[0xe];
                    local_24 = local_134[0xf];
                    *(uint *********)(puVar24 + -0xc) = &local_84;
                    *(uint ********)(puVar24 + -0x10) = local_154;
                    local_5c = local_124;
                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */
                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;
                    local_68 = uVar12;
                    FUN_000a10f0();
                    pppppppuVar27 = local_120;
                    pppppppuVar29 = extraout_ECX_22;
                    if (local_84 != local_7c) {
                      *(uint ********)(puVar24 + -0x10) = local_84;
                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;
                      FUN_001807a0();
                      pppppppuVar29 = extraout_ECX_23;
                      pppppppuVar22 = pppppppuVar27;
                    }
                    param_1[0xe][(int)local_f0] = (uint *****)0x2;
                    ppppppuVar21 = param_1[0x21];
                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;
                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;
                  }
                }
                else {
                  pppppuVar15 = (*local_13c)[2];
                  if (pppppuVar15 == (uint *****)0x0) {
                    *(uint ********)(puVar24 + -4) = pppppppuVar22;
                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;
                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;
                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;
                    FUN_0005f0b0();
                  }
                  iVar19 = (int)local_f0 * 4;
                  pppppuVar18 = param_1[0xe][(int)local_f0];
                  pppppppuVar29 = param_1;
                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {
LAB_000a2f0d:
                    if (pppppuVar15[0x164d] != (uint ****)0x0) {
                      if (pppppuVar18 == (uint *****)0x0) {
                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &
                                 (uint)param_1[0x21][(int)local_f0 * 2];
                        pppppppuVar29 = local_ec;
                        puVar24 = puVar23;
                        if (uVar10 != 0xffffffff) {
                          *(uint *)(puVar23 + -4) = uVar10;
                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;
                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;
                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;
                    /* WARNING: Subroutine does not return */
                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;
                          FUN_0005f0b0();
                        }
                        goto LAB_000a23a1;
                      }
LAB_000a2cf0:
                      pppppppuVar27 = local_120;
                      pppppppuVar29 = local_ec;
                      if (((uint)local_ec[2] & 2) != 0) {
                        *(uint ********)(puVar23 + -8) = local_f0;
                        *(uint ********)(puVar23 + -0xc) = param_1;
                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);
                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;
                        cVar7 = FUN_00062560();
                        pppppppuVar22 = pppppppuVar27;
                        if (cVar7 != '\0') {
                          if ((*local_13c)[2] == (uint *****)0x0) {
                            *(int *)(puVar23 + -4) = iVar19;
                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;
                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;
                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */
                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;
                            FUN_0005f0b0();
                          }
                          pppppppuVar29 = extraout_ECX_20;
                          puVar26 = puVar23;
                          pppppppuVar27 = local_f0;
                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {
                            *(uint ********)(puVar23 + -4) = local_f0;
                            *(uint ********)(puVar23 + -8) = param_1;
                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);
                            *(int ***)(puVar23 + -0x10) = &local_11c;
                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */
                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;
                            FUN_000625c0();
                            iVar19 = *local_11c;
                            iVar5 = local_11c[1];
                            *(undefined4 *)(puVar23 + -0xc) = local_118;
                            *(int **)(puVar23 + -0x10) = local_11c;
                            *(uint *********)(puVar23 + -0x14) = &local_84;
                            pcVar6 = *(code **)(iVar19 + 0x40);
                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;
                            (*pcVar6)();
                            pppppppuVar29 = local_84;
                            local_12c = (uint *******)param_1[1];
                            pppppppuVar22 = (uint *******)(*param_1)[0x10];
                            if (pppppppuVar22 == local_120 + -0x99678) {
                              *(uint ********)(puVar23 + -0x10) = local_f0;
                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;
                              *(uint *********)(puVar23 + -0x18) = &local_9c;
                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */
                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;
                              FUN_0004e830();
                            }
                            else {
                              *(uint ********)(puVar23 + -0x10) = local_f0;
                              *(uint ********)(puVar23 + -0x14) = param_1;
                              *(uint *********)(puVar23 + -0x18) = &local_9c;
                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */
                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;
                              (*(code *)pppppppuVar22)();
                            }
                            local_154 = local_9c;
                            local_124 = (uint *******)*local_1a0;
                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;
                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;
                            uVar12 = gettext();
                            pppppppuVar22 = local_120;
                            *(int *)(puVar23 + -0x18) = iVar5;
                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;
                            *(uint ********)(puVar23 + -0x20) = local_12c;
                            *(uint ********)(puVar23 + -0x24) = local_154;
                            *(uint ********)(puVar23 + -0x28) = local_124;
                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;
                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */
                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;
                            FUN_0005ad60();
                            pppppppuVar29 = extraout_ECX_24;
                            if (local_9c != local_94) {
                              *(uint ********)(puVar23 + -0x1c) = local_9c;
                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;
                              FUN_001807a0();
                              pppppppuVar29 = extraout_ECX_25;
                            }
                            pppppppuVar28 = local_120;
                            puVar26 = puVar23 + -0xc;
                            pppppppuVar27 = local_f0;
                            if (local_84 != local_7c) {
                              *(uint ********)(puVar23 + -0x1c) = local_84;
                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;
                              FUN_001807a0();
                              puVar26 = puVar23 + -0xc;
                              pppppppuVar29 = extraout_ECX_26;
                              pppppppuVar22 = pppppppuVar28;
                              pppppppuVar27 = local_f0;
                            }
                          }
                          goto LAB_000a2c3a;
                        }
                        iVar19 = (int)local_f0 * 4;
                        pppppuVar18 = param_1[0xe][(int)local_f0];
                        pppppppuVar29 = extraout_ECX_20;
                      }
                    }
                  }
                  else {
                    if (pppppuVar18 == (uint *****)0x0) {
                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &
                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {
                        *(uint ********)(puVar24 + -4) = param_1;
                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;
                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;
                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */
                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;
                        FUN_0005f0b0();
                      }
                      goto LAB_000a23a1;
                    }
                    if (((uint)local_ec[2] & 2) != 0) {
                      local_80 = local_f0;
                      local_170 = *(uint ********)(param_2 + 0x158);
                      local_84 = param_1;
                      local_178 = (uint *******)&local_84;
                      *(uint ********)(puVar24 + -8) = local_178;
                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;
                      *(int **)(puVar24 + -0x10) = &local_110;
                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;
                      FUN_00065700();
                      puVar26 = puVar24 + -4;
                      puVar23 = puVar24 + -4;
                      pppppuVar15 = (*local_13c)[2];
                      if (local_110 == 0) {
                        if (pppppuVar15 == (uint *****)0x0) {
                          *(undefined4 *)(puVar24 + -8) = 0;
                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;
                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;
                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */
                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;
                          FUN_0005f0b0();
                        }
                        pppppppuVar29 = extraout_ECX_06;
                        pppppppuVar27 = local_f0;
                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {
                          ppppppuVar21 = param_1[1];
                          pppppppuVar22 = (uint *******)(*param_1)[0x10];
                          if (pppppppuVar22 == local_120 + -0x99678) {
                            *(uint ********)(puVar24 + -0xc) = local_f0;
                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;
                            *(uint ********)(puVar24 + -0x14) = local_178;
                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */
                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;
                            FUN_0004e830();
                          }
                          else {
                            *(uint ********)(puVar24 + -0xc) = local_f0;
                            *(uint ********)(puVar24 + -0x10) = param_1;
                            *(uint ********)(puVar24 + -0x14) = local_178;
                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;
                            (*(code *)pppppppuVar22)();
                          }
                          local_12c = local_84;
                          ppppppuVar17 = *local_1a4;
                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;
                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;
                          uVar12 = gettext();
                          pppppppuVar22 = local_120;
                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;
                          *(uint ********)(puVar24 + -0x10) = local_12c;
                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;
                          *(undefined4 *)(puVar24 + -0x18) = uVar12;
                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */
                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;
                          FUN_0005ad60();
                          puVar26 = puVar24 + -8;
                          pppppppuVar29 = extraout_ECX_14;
                          pppppppuVar27 = local_f0;
                          if (local_84 != local_7c) {
                            *(uint ********)(puVar24 + -0x18) = local_84;
                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;
                            FUN_001807a0();
                            puVar26 = puVar24 + -8;
                            pppppppuVar29 = extraout_ECX_15;
                            pppppppuVar27 = local_f0;
                          }
                        }
                        goto LAB_000a2c3a;
                      }
                      if (pppppuVar15 == (uint *****)0x0) {
                        *(undefined4 *)(puVar24 + -8) = 0;
                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;
                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;
                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;
                        FUN_0005f0b0();
                      }
                      iVar19 = (int)local_f0 * 4;
                      pppppuVar18 = param_1[0xe][(int)local_f0];
                      pppppppuVar29 = extraout_ECX_06;
                      pppppppuVar22 = param_1;
                      goto LAB_000a2f0d;
                    }
                    pppppppuVar29 = local_ec;
                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;
                  }
                  puVar24 = puVar23;
                  if (pppppuVar18 != (uint *****)0x2) {
                    if (local_136 != '\0') goto LAB_000a2b6b;
LAB_000a2d10:
                    pppppppuVar29 = local_f0;
                    local_170 = *(uint ********)((int)local_158 + iVar19);
                    *(uint *********)(puVar24 + -0x10) = &local_84;
                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);
                    *(uint ********)(puVar24 + -0x18) = local_170;
                    *(uint ********)(puVar24 + -0x1c) = local_124;
                    *(uint ********)(puVar24 + -0x20) = local_154;
                    *(uint ********)(puVar24 + -0x24) = local_12c;
                    *(uint ********)(puVar24 + -0x28) = local_f0;
                    *(uint ********)(puVar24 + -0x2c) = param_1;
                    *(int *)(puVar24 + -0x30) = param_3;
                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;
                    uVar12 = FUN_0008ff40();
                    pppppppuVar27 = local_120;
                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;
                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);
                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;
                    if (pppppppuVar22 == (uint *******)0xffffffff) {
                      *ppppppuVar21 = (uint *****)0xffffffff;
                      ppppppuVar21[1] = (uint *****)0xffffffff;
                    }
                    else {
                      *ppppppuVar21 = (uint *****)local_84;
                      ppppppuVar21[1] = (uint *****)local_80;
                    }
                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&
                       (local_170 != (uint *******)0x0)) {
                      *(byte *)(param_1 + 0x13) = 1;
                    }
                    pppppppuVar29 = local_84;
                    if ((char)local_140 == '\0') {
                      if ((*local_13c)[2] == (uint *****)0x0) {
                        *(undefined4 *)(puVar24 + -4) = 0;
                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;
                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;
                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */
                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;
                        FUN_0005f0b0();
                      }
                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {
                        bVar33 = false;
                        bVar35 = ((uint)local_ec[2] & 2) == 0;
                        if (bVar35) {
                          pppppppuVar29 = (uint *******)0xc;
                          pppppppuVar28 = local_12c;
                          pbVar31 = (byte *)((int)local_120 + -0xe0537);
                          do {
                            if (pppppppuVar29 == (uint *******)0x0) break;
                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;
                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;
                            pppppppuVar28 =
                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                          } while (bVar35);
                          bVar34 = false;
                          bVar33 = (!bVar33 && !bVar35) == bVar33;
                          if (!bVar33) {
                            pppppppuVar29 = (uint *******)0xd;
                            pppppppuVar28 = local_12c;
                            pbVar31 = (byte *)((int)local_120 + -0xdd155);
                            do {
                              if (pppppppuVar29 == (uint *******)0x0) break;
                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;
                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;
                              pppppppuVar28 =
                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                            } while (bVar33);
                            bVar35 = false;
                            bVar33 = (!bVar34 && !bVar33) == bVar34;
                            if (!bVar33) {
                              pppppppuVar29 = (uint *******)0xd;
                              pppppppuVar22 = local_12c;
                              pbVar31 = (byte *)((int)local_120 + -0xe052b);
                              do {
                                if (pppppppuVar29 == (uint *******)0x0) break;
                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;
                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;
                                pppppppuVar22 =
                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);
                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                              } while (bVar33);
                              bVar34 = false;
                              bVar33 = (!bVar35 && !bVar33) == bVar35;
                              pppppppuVar22 = local_120;
                              if (!bVar33) {
                                pppppppuVar29 = (uint *******)0xe;
                                pppppppuVar28 = local_12c;
                                pppppppuVar32 = local_120 + -0x37452;
                                do {
                                  if (pppppppuVar29 == (uint *******)0x0) break;
                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;
                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;
                                  pppppppuVar28 =
                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                                  pppppppuVar32 =
                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);
                                } while (bVar33);
                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;
                              }
                              if (local_b8 == local_b4) {
                                *(uint *********)(puVar24 + -8) = &local_f0;
                                *(int **)(puVar24 + -0xc) = local_b8;
                                puVar25 = puVar24 + -0x10;
                                *(int ***)(puVar24 + -0x10) = &local_bc;
                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */
                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;
                                FUN_00047200();
                                pppppppuVar29 = extraout_ECX_31;
                                pppppppuVar22 = pppppppuVar27;
                                goto LAB_000a3e57;
                              }
                              *local_b8 = (int)local_f0;
                              local_b8 = local_b8 + 1;
                              goto LAB_000a23a1;
                            }
                          }
                          if (local_c4 == local_c0) {
                            *(uint *********)(puVar24 + -8) = &local_f0;
                            *(int **)(puVar24 + -0xc) = local_c4;
                            puVar25 = puVar24 + -0x10;
                            *(int ***)(puVar24 + -0x10) = &local_c8;
                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;
                            FUN_00047200();
                            pppppppuVar29 = extraout_ECX_30;
                            goto LAB_000a3e57;
                          }
                          *local_c4 = (int)local_f0;
                          local_c4 = local_c4 + 1;
                        }
                      }
                    }
                  }
                }
              }
            }
            else if (local_dc == local_d8) {
              *(uint *********)(puVar24 + -8) = &local_f0;
              *(uint ********)(puVar24 + -0xc) = local_dc;
              puVar25 = puVar24 + -0x10;
              *(uint *********)(puVar24 + -0x10) = &local_e0;
              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;
              FUN_00047200();
              pppppppuVar29 = extraout_ECX_21;
LAB_000a3e57:
              puVar24 = puVar25 + 0x10;
            }
            else {
              *local_dc = (uint ******)local_f0;
              local_dc = local_dc + 1;
            }
          }
LAB_000a23a1:
          pppppppuVar27 = (uint *******)((int)local_f0 + 1);
          pppppppuVar28 = local_134 + 0x10;
          local_f0 = pppppppuVar27;
          if (local_130 <= pppppppuVar27) goto LAB_000a2740;
          local_ec = pppppppuVar28;
          ppppppuVar21 = *pppppppuVar28;
          local_124 = (uint *******)local_134[0x11];
          puVar26 = puVar24;
          local_134 = pppppppuVar28;
        } while (ppppppuVar21 < local_148);
      }
      pppppppuVar22 = local_f0;
      local_ec = local_134;
      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;
      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;
      uVar12 = gettext();
      *(uint *******)(puVar26 + -4) = ppppppuVar21;
      *(uint ********)(puVar26 + -8) = pppppppuVar22;
      *(undefined4 *)(puVar26 + -0xc) = uVar12;
      *(uint ********)(puVar26 + -0x10) = param_1;
      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;
      FUN_00091980();
      puVar24 = puVar26;
    }
    if (local_bc != (int *)0x0) {
      *(int **)(puVar24 + -0x10) = local_bc;
      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;
      FUN_001807a0();
    }
    if (local_c8 != (int *)0x0) {
      *(int **)(puVar24 + -0x10) = local_c8;
      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;
      FUN_001807a0();
    }
    if (local_d4 != (int *)0x0) {
      *(int **)(puVar24 + -0x10) = local_d4;
      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;
      FUN_001807a0();
    }
    if (local_e0 != (uint *******)0x0) {
      *(uint ********)(puVar24 + -0x10) = local_e0;
      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;
      FUN_001807a0();
    }
    if (local_b0 != (void *)0x0) {
      *(void **)(puVar24 + -0x10) = local_b0;
      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;
      FUN_001807a0();
    }
  }
  else {
    puVar24 = auStack_1ac;
    if (local_135 == '\0') {
      iVar19 = *param_4;
      if (iVar19 != 0) {
        FUN_0005cea0(iVar19);
        FUN_00180780(iVar19,0xc);
      }
      iVar19 = param_4[1];
      *param_4 = 0;
      if (iVar19 != 0) {
        FUN_0005cea0(iVar19);
        FUN_00180780(iVar19,0xc);
      }
      param_4[1] = 0;
      puVar24 = auStack_1ac;
    }
  }
  *(undefined4 **)(puVar24 + -0x10) = local_15c;
  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;
  FUN_001807a0();
  *(undefined4 **)(puVar24 + -0x10) = local_158;
  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;
  FUN_001807a0();
  return;
}


CALL 0x0004fb76
ADD EAX,0x26028b
PUSH EBP
MOV EBP,ESP
PUSH EDI
PUSH ESI
PUSH EBX
SUB ESP,0x19c
MOV dword ptr [EBP + 0xfffffee4],EAX
LEA EAX,[EAX + 0x378]
MOV dword ptr [EBP + 0xfffffec8],EAX
MOV EAX,dword ptr [EAX]
MOV EDX,dword ptr [EAX + 0xc]
TEST EDX,EDX
JZ 0x000a43c3
MOV EDX,dword ptr [EDX + 0x4]
MOV EAX,dword ptr [EAX + 0x8]
MOV EBX,dword ptr [EDX + 0x60]
MOV dword ptr [EBP + 0xfffffe6c],EBX
MOV EBX,dword ptr [EBP + 0x8]
MOV ECX,dword ptr [EBX + 0x28]
MOV dword ptr [EBP + 0xfffffed4],ECX
TEST EAX,EAX
JZ 0x000a34ee
CMP byte ptr [EAX + 0x18b1],0x0
JZ 0x000a2650
MOV EDX,dword ptr [EBP + 0x8]
MOV ECX,dword ptr [EDX + 0x54]
MOV dword ptr [EBP + 0xfffffe74],ECX
TEST ECX,ECX
JZ 0x000a3448
MOV EBX,dword ptr [EBP + 0xc]
MOV EDX,dword ptr [EBX + 0x158]
CMP byte ptr [EDX + 0xc],0x0
JZ 0x000a4361
MOV EDX,dword ptr [EAX + 0x5934]
TEST EDX,EDX
JNZ 0x000a33a4
MOV EBX,dword ptr [EBP + 0xfffffed4]
TEST EBX,EBX
JZ 0x000a2947
MOV EBX,dword ptr [EBP + 0xfffffe74]
MOV byte ptr [EBP + 0xfffffecc],0x1
MOV byte ptr [EBP + 0xfffffecf],0x1
MOV ECX,dword ptr [EBX]
MOV EDX,dword ptr [EBX + 0x8]
MOV byte ptr [EBP + 0xfffffece],0x0
MOV dword ptr [EBP + 0xfffffea4],ECX
MOV ECX,dword ptr [EBX + 0xc]
MOV dword ptr [EBP + 0xfffffebc],EDX
MOV EDX,dword ptr [EBX + 0x10]
MOV dword ptr [EBP + 0xfffffea0],ECX
MOV ECX,dword ptr [EBX + 0x18]
MOV dword ptr [EBP + 0xfffffe88],EDX
MOV EDX,dword ptr [EBX + 0x1c]
MOV EBX,dword ptr [EBX + 0x4]
MOV dword ptr [EBP + 0xfffffe84],ECX
MOV dword ptr [EBP + 0xfffffe7c],EDX
MOV dword ptr [EBP + 0xfffffec0],EBX
MOV EAX,dword ptr [EAX + 0x593c]
MOV byte ptr [EBP + 0xfffffee0],0x0
TEST EAX,EAX
JZ 0x000a1e9d
MOVZX ECX,byte ptr [EAX + 0x60]
MOV byte ptr [EBP + 0xfffffee0],CL
TEST CL,CL
JZ 0x000a1e9d
MOVZX EAX,byte ptr [EAX + 0x61]
XOR EAX,0x1
MOV byte ptr [EBP + 0xfffffee0],AL
CMP dword ptr [EBP + 0xfffffed4],0x3fffffff
JA 0x000a4380
MOV ESI,dword ptr [EBP + 0xfffffed4]
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
LEA EDI,[ESI*0x4 + 0x0]
PUSH EDI
MOV dword ptr [EBP + 0xfffffeb8],EDI
CALL 0x0017ebf0
ADD ESP,0x10
MOV EDX,EAX
MOV dword ptr [EBP + 0xfffffeac],EAX
ADD EDX,EDI
TEST ESI,ESI
JZ 0x000a1eed
MOV dword ptr [EAX],0x0
ADD EAX,0x4
CMP EAX,EDX
JNZ 0x000a1ee0
MOV EDI,dword ptr [EBP + 0xfffffeb8]
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EDI
CALL 0x0017ebf0
MOV EBX,dword ptr [EBP + 0xfffffea4]
MOV ECX,dword ptr [EBP + 0xfffffed4]
MOV EDX,EAX
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffea8],EAX
ADD EDX,EDI
ADD EBX,0x40
MOV dword ptr [EBP + 0xfffffed0],EBX
TEST ECX,ECX
JZ 0x000a418c
LEA ESI,[ESI]
MOV dword ptr [EAX],0x0
ADD EAX,0x4
CMP EAX,EDX
JNZ 0x000a1f30
CMP dword ptr [EBP + 0xfffffed4],0x1
JZ 0x000a418c
MOV EAX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EBP + 0xfffffed0]
MOV EDI,0x1
MOV dword ptr [EBP + 0xfffffec4],0x0
LEA EAX,[EAX + 0xfff22dc4]
MOV dword ptr [EBP + 0xfffffe98],EAX
MOV EAX,dword ptr [EBP + 0x8]
ADD EAX,0x90
MOV dword ptr [EBP + 0xfffffeb0],EAX
JMP 0x000a1f9a
ADD EDI,0x1
ADD ESI,0x40
CMP EDI,dword ptr [EBP + 0xfffffed4]
JZ 0x000a2028
CMP byte ptr [EBP + 0xfffffee0],0x0
JZ 0x000a1fb3
MOV EAX,dword ptr [ESI + 0x8]
AND EAX,0x2
CMP EAX,0x1
SBB dword ptr [EBP + 0xfffffec4],-0x1
MOV EBX,dword ptr [ESI + 0x4]
CMP EBX,0x9
JZ 0x000a1fc0
CMP EBX,0x4
JNZ 0x000a1f88
MOV EAX,dword ptr [ESI + 0x2c]
MOV dword ptr [EBP + 0xfffffed8],EAX
CMP EAX,0xfeff
JA 0x000a2950
MOV EAX,dword ptr [EBP + 0xfffffed8]
TEST EAX,EAX
JZ 0x000a2980
MOV ECX,dword ptr [EBP + 0xfffffed4]
CMP EAX,ECX
JNC 0x000a2980
MOV EAX,dword ptr [EBP + 0xfffffeac]
MOV ECX,dword ptr [EBP + 0xfffffed8]
LEA EAX,[EAX + ECX*0x4]
MOV EDX,dword ptr [EAX]
TEST EDX,EDX
JZ 0x000a2710
MOV dword ptr [EAX],0xffffffff
ADD EDI,0x1
ADD ESI,0x40
CMP EDI,dword ptr [EBP + 0xfffffed4]
JNZ 0x000a1f9a
LEA ESI,[ESI]
CMP byte ptr [EBP + 0xfffffecf],0x0
JZ 0x000a35c0
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x1c]
TEST EAX,EAX
JZ 0x000a4488
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x0005cf90
MOV byte ptr [EBP + 0xfffffecd],AL
ADD ESP,0x10
TEST AL,AL
JNZ 0x000a3548
MOV EAX,dword ptr [EBP + 0xfffffec4]
TEST EAX,EAX
JZ 0x000a20f1
MOV EAX,dword ptr [EBP + 0xfffffec8]
MOV EAX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x8]
TEST EAX,EAX
JZ 0x000a43a7
MOV EDX,dword ptr [EAX + 0x593c]
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EBP + 0xffffff18],EAX
MOV EAX,dword ptr [EDX + 0x20]
CMP EAX,dword ptr [EDX + 0x24]
JZ 0x000a423b
MOV EBX,dword ptr [EBP + 0x8]
ADD EAX,0x4
MOV dword ptr [EAX + -0x4],EBX
MOV dword ptr [EDX + 0x20],EAX
CMP dword ptr [EBP + 0xfffffec4],0x28f5c28
JA 0x000a434c
MOV EAX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EAX + 0x120]
MOV EAX,dword ptr [EAX + 0x128]
MOV dword ptr [EBP + 0xfffffed8],EAX
SUB EAX,ESI
SAR EAX,0x2
IMUL EAX,EAX,-0x3d70a3d7
CMP EAX,dword ptr [EBP + 0xfffffec4]
JC 0x000a3762
MOV EAX,dword ptr [EBP + 0x8]
MOV byte ptr [EAX + 0x11d],0x1
MOV EDI,dword ptr [EBP + 0xfffffed4]
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV dword ptr [EBP + 0xffffff54],0x0
MOV dword ptr [EBP + 0xffffff58],0x0
MOV dword ptr [EBP + 0xffffff5c],0x0
LEA ESI,[EDI + 0x1f]
MOV dword ptr [EBP + 0xffffff60],0x0
SHR ESI,0x5
MOV dword ptr [EBP + 0xffffff64],0x0
SHL ESI,0x2
PUSH ESI
CALL 0x0017ebf0
ADD ESP,0xc
LEA EDX,[EAX + ESI*0x1]
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV dword ptr [EBP + 0xffffff54],EAX
PUSH ESI
MOV dword ptr [EBP + 0xffffff64],EDX
MOV EDX,EDI
AND EDI,0x1f
PUSH 0x0
SAR EDX,0x5
PUSH EAX
LEA EDX,[EAX + EDX*0x4]
MOV dword ptr [EBP + 0xffffff58],0x0
MOV dword ptr [EBP + 0xffffff5c],EDX
MOV dword ptr [EBP + 0xffffff60],EDI
CALL 0x000262f0
MOV EAX,dword ptr [EBP + 0xfffffec8]
ADD ESP,0x10
MOV EAX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x8]
TEST EAX,EAX
JZ 0x000a43fb
MOVZX ECX,byte ptr [EAX + 0x318d]
MOV byte ptr [EBP + 0xfffffec4],CL
MOV byte ptr [EBP + 0xfffffeb8],CL
TEST CL,CL
JNZ 0x000a21bd
MOVZX EAX,byte ptr [EAX + 0x3095]
MOV byte ptr [EBP + 0xfffffeb8],AL
CMP dword ptr [EBP + 0xfffffed4],0x1
MOV dword ptr [EBP + 0xffffff24],0x0
MOV dword ptr [EBP + 0xffffff28],0x0
MOV dword ptr [EBP + 0xffffff2c],0x0
MOV dword ptr [EBP + 0xffffff30],0x0
MOV dword ptr [EBP + 0xffffff34],0x0
MOV dword ptr [EBP + 0xffffff38],0x0
MOV dword ptr [EBP + 0xffffff3c],0x0
MOV dword ptr [EBP + 0xffffff40],0x0
MOV dword ptr [EBP + 0xffffff44],0x0
MOV dword ptr [EBP + 0xffffff48],0x0
MOV dword ptr [EBP + 0xffffff4c],0x0
MOV dword ptr [EBP + 0xffffff50],0x0
MOV dword ptr [EBP + 0xffffff14],0x1
JBE 0x000a2726
MOV EAX,dword ptr [EBP + 0xfffffed0]
MOV dword ptr [EBP + 0xffffff18],EAX
MOV EAX,dword ptr [EBP + 0xfffffea4]
MOV EDI,dword ptr [EAX + 0x40]
MOV EAX,dword ptr [EAX + 0x44]
MOV dword ptr [EBP + 0xfffffee0],EAX
CMP dword ptr [EBP + 0xfffffebc],EDI
JBE 0x000a3635
MOV EAX,dword ptr [EBP + 0xfffffee4]
MOV ESI,0x1
MOV dword ptr [EBP + 0xfffffe98],0x0
MOV dword ptr [EBP + 0xfffffe9c],0x0
LEA EAX,[EAX + 0x488]
MOV dword ptr [EBP + 0xfffffe64],EAX
MOV dword ptr [EBP + 0xfffffe60],EAX
JMP 0x000a23e0
CMP byte ptr [EBP + 0xfffffece],0x0
JZ 0x000a2360
MOV EAX,dword ptr [EBP + 0xfffffec8]
MOV EAX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x8]
TEST EAX,EAX
JZ 0x000a42d8
CMP byte ptr [EAX + 0x18b1],0x0
JZ 0x000a2360
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffed8]
PUSH dword ptr [EBP + 0x8]
CALL 0x00091d10
ADD ESP,0x10
TEST AL,AL
JNZ 0x000a2c68
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffed8]
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH dword ptr [EBP + 0x8]
PUSH dword ptr [EBP + 0x10]
CALL 0x0007b5f0
ADD ESP,0x10
TEST AL,AL
JNZ 0x000a2c68
MOV EAX,dword ptr [EBP + 0xfffffee0]
SUB EAX,0xe
CMP EAX,0x1
JBE 0x000a2c68
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV EDI,dword ptr [EBP + 0xfffffed8]
SUB ESP,0x8
LEA EAX,[EBX + 0xfff21948]
PUSH EAX
PUSH EDI
CALL 0x00026930
ADD ESP,0x10
CMP byte ptr [EDI + EAX*0x1],0x0
JZ 0x000a3030
LEA ESI,[ESI]
CMP byte ptr [EBP + 0xfffffeb8],0x0
JZ 0x000a2381
MOV EAX,dword ptr [EBP + 0xfffffee0]
CMP EAX,0x9
JZ 0x000a2f78
CMP EAX,0x4
JZ 0x000a2f78
CMP dword ptr [EBP + 0xfffffee0],0x11
JNZ 0x000a29b0
CMP byte ptr [EBP + 0xfffffec4],0x0
JZ 0x000a29b0
MOV ESI,dword ptr [EBP + 0xffffff14]
ADD ESI,0x1
ADD dword ptr [EBP + 0xfffffed0],0x40
MOV dword ptr [EBP + 0xffffff14],ESI
CMP ESI,dword ptr [EBP + 0xfffffed4]
JNC 0x000a2740
MOV EAX,dword ptr [EBP + 0xfffffed0]
MOV dword ptr [EBP + 0xffffff18],EAX
MOV EDI,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x4]
MOV dword ptr [EBP + 0xfffffee0],EAX
CMP EDI,dword ptr [EBP + 0xfffffebc]
JNC 0x000a3640
ADD EDI,dword ptr [EBP + 0xfffffec0]
CMP byte ptr [EBP + 0xfffffecf],0x0
MOV dword ptr [EBP + 0xfffffed8],EDI
JNZ 0x000a22b0
PUSH dword ptr [EBP + 0xc]
PUSH ESI
PUSH EDI
PUSH dword ptr [EBP + 0x8]
CALL 0x000925b0
ADD ESP,0x10
CMP AL,0x1
JNZ 0x000a241a
CMP byte ptr [EBP + 0xfffffec4],0x0
JZ 0x000a2fb0
MOV EAX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV ECX,0x10
LEA EDI,[EAX + 0xfff21171]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x000a2486
MOV EAX,dword ptr [EBP + 0xffffff18]
MOV ECX,dword ptr [EBP + 0xfffffe98]
MOV byte ptr [EBP + 0xfffffecd],0x1
MOV EBX,dword ptr [EBP + 0xfffffe9c]
MOV EDX,dword ptr [EAX + 0x8]
OR EDX,ECX
MOV ECX,dword ptr [EAX + 0xc]
MOV EAX,0x1
MOV dword ptr [EBP + 0xfffffe98],EDX
MOV EDX,dword ptr [EBP + 0xffffff54]
OR ECX,EBX
MOV dword ptr [EBP + 0xfffffe9c],ECX
MOV ECX,dword ptr [EBP + 0xffffff14]
MOV EBX,ECX
SHL EAX,CL
SHR EBX,0x5
OR dword ptr [EDX + EBX*0x4],EAX
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffed8]
PUSH dword ptr [EBP + 0x8]
CALL 0x00091ac0
ADD ESP,0x10
CMP AL,0x1
MOV EAX,dword ptr [EBP + 0xfffffec8]
MOV EAX,dword ptr [EAX]
JNZ 0x000a24b3
CMP byte ptr [EBP + 0xfffffec4],0x0
JZ 0x000a2ff0
MOV EAX,dword ptr [EAX + 0xc]
TEST EAX,EAX
JZ 0x000a42f6
MOV EAX,dword ptr [EAX + 0x4]
MOV EDX,dword ptr [EBP + 0xffffff14]
MOV EAX,dword ptr [EAX + 0x50]
TEST EAX,EAX
JZ 0x000a2b98
SUB ESP,0x8
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV dword ptr [EBP + 0xfffffeb0],EDX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffed8]
CALL 0x00026b10
ADD ESP,0x10
MOV EDX,dword ptr [EBP + 0xfffffeb0]
TEST EAX,EAX
JNZ 0x000a2b98
MOV EBX,EDX
MOV ESI,dword ptr [EBP + 0xffffff54]
MOV EAX,0x1
MOV ECX,EDX
SHR EBX,0x5
SHL EAX,CL
OR dword ptr [ESI + EBX*0x4],EAX
CMP dword ptr [EBP + 0xfffffee0],0x7
JZ 0x000a2bcb
MOV EBX,EDX
MOV ESI,dword ptr [EBP + 0xffffff54]
MOV EAX,0x1
MOV ECX,EDX
SHR EBX,0x5
SHL EAX,CL
AND EAX,dword ptr [ESI + EBX*0x4]
SETNZ BL
JNZ 0x000a2c18
XOR EBX,EBX
CMP dword ptr [EBP + 0xfffffee0],0x11
JZ 0x000a3340
MOV EAX,dword ptr [EBP + 0xffffff18]
TEST byte ptr [EAX + 0x9],0x2
JNZ 0x000a2583
MOV EAX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV ECX,0xd
LEA EDI,[EAX + 0xfff22e9d]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x000a3510
MOV EAX,dword ptr [EBP + 0x10]
MOV ESI,dword ptr [EAX + 0x1d0]
TEST ESI,ESI
JZ 0x000a22b0
TEST BL,BL
JNZ 0x000a22b0
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffee0]
MOV EBX,dword ptr [EBP + 0xfffffee4]
CALL 0x00066600
ADD ESP,0x10
TEST AL,AL
JZ 0x000a22b0
MOV EAX,dword ptr [EBP + 0xffffff18]
MOV EDX,dword ptr [EAX + 0x24]
MOV EAX,dword ptr [EAX + 0x20]
MOV dword ptr [EBP + 0xfffffeb0],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EBP + 0xfffffeb4],EDX
MOV EDX,dword ptr [EBP + 0xffffff14]
MOV EAX,dword ptr [EAX + 0x34]
TEST EAX,EAX
JZ 0x000a261a
LEA EBX,[EAX + 0x4]
MOV EAX,dword ptr [EAX + 0x8]
TEST EAX,EAX
JZ 0x000a261a
MOV ECX,EBX
JMP 0x000a2601
MOV ECX,EAX
MOV EAX,dword ptr [EAX + 0x8]
TEST EAX,EAX
JZ 0x000a260d
CMP EDX,dword ptr [EAX + 0x10]
JBE 0x000a25f8
MOV EAX,dword ptr [EAX + 0xc]
TEST EAX,EAX
JNZ 0x000a2601
CMP EBX,ECX
JZ 0x000a261a
CMP EDX,dword ptr [ECX + 0x10]
JNC 0x000a31f0
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffeb4]
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH dword ptr [EBP + 0xfffffeb0]
PUSH dword ptr [EBP + 0xfffffed8]
PUSH EDX
PUSH dword ptr [EBP + 0x8]
PUSH ESI
CALL 0x00067350
ADD ESP,0x20
JMP 0x000a22b0
MOV EDI,dword ptr [EAX + 0x5934]
TEST EDI,EDI
JNZ 0x000a3390
MOV ECX,dword ptr [EBP + 0x10]
MOVZX EBX,byte ptr [ECX + 0x1ce]
MOV byte ptr [EBP + 0xfffffece],BL
TEST BL,BL
JNZ 0x000a3430
MOV EDI,dword ptr [EBP + 0xfffffed4]
TEST EDI,EDI
JZ 0x000a2947
MOV ECX,dword ptr [EBP + 0x14]
MOV EDX,dword ptr [ECX]
MOV EBX,ECX
MOV ECX,dword ptr [ECX + 0x8]
MOV EDX,dword ptr [EDX + 0x8]
MOV dword ptr [EBP + 0xfffffebc],ECX
MOV dword ptr [EBP + 0xfffffea4],EDX
MOV EDX,dword ptr [EBX + 0xc]
MOV dword ptr [EBP + 0xfffffea0],EDX
TEST EDX,EDX
JZ 0x000a26b9
MOV ECX,dword ptr [EBP + 0xfffffea0]
MOV EDX,dword ptr [ECX + 0x8]
MOV dword ptr [EBP + 0xfffffea0],EDX
MOV ECX,dword ptr [EBP + 0x14]
MOV EDX,dword ptr [ECX + 0x10]
MOV ECX,dword ptr [ECX + 0x18]
MOV dword ptr [EBP + 0xfffffe88],EDX
MOV dword ptr [EBP + 0xfffffe84],ECX
TEST ECX,ECX
JZ 0x000a26db
MOV EBX,dword ptr [ECX + 0x8]
MOV dword ptr [EBP + 0xfffffe84],EBX
MOV EDX,dword ptr [EBP + 0x14]
MOV byte ptr [EBP + 0xfffffecc],0x0
MOV byte ptr [EBP + 0xfffffecf],0x0
MOV dword ptr [EBP + 0xfffffe74],0x0
MOV ECX,dword ptr [EDX + 0x1c]
MOV EDX,dword ptr [EDX + 0x4]
MOV dword ptr [EBP + 0xfffffe7c],ECX
MOV EBX,dword ptr [EDX + 0x8]
MOV dword ptr [EBP + 0xfffffec0],EBX
JMP 0x000a1e71
MOV dword ptr [EAX],EDI
MOV ECX,dword ptr [EBP + 0xfffffed8]
MOV EAX,dword ptr [EBP + 0xfffffea8]
MOV dword ptr [EAX + ECX*0x4],EBX
JMP 0x000a1f88
MOV dword ptr [EBP + 0xfffffe98],0x0
MOV dword ptr [EBP + 0xfffffe9c],0x0
LEA ESI,[ESI]
CMP byte ptr [EBP + 0xfffffecf],0x0
JNZ 0x000a2782
SUB ESP,0x8
MOV EDI,dword ptr [EBP + 0xfffffee4]
PUSH dword ptr [EBP + 0x8]
PUSH dword ptr [EBP + 0x10]
MOV EBX,EDI
CALL 0x0007bc30
MOVZX EAX,byte ptr [EBP + 0xfffffecd]
POP EDI
PUSH dword ptr [EBP + 0x8]
PUSH dword ptr [EBP + 0xfffffe9c]
PUSH dword ptr [EBP + 0xfffffe98]
PUSH EAX
PUSH dword ptr [EBP + 0x10]
CALL 0x0007bb30
ADD ESP,0x20
CMP byte ptr [EBP + 0xfffffece],0x0
MOV EBX,dword ptr [EBP + 0xffffff30]
MOV EAX,dword ptr [EBP + 0xffffff34]
JZ 0x000a36e7
CMP EAX,EBX
JNZ 0x000a44c8
CMP byte ptr [EBP + 0xfffffeb8],0x0
JNZ 0x000a41bd
CMP byte ptr [EBP + 0xfffffecc],0x0
MOV EAX,dword ptr [EBP + 0xffffff24]
MOV EDX,dword ptr [EBP + 0xffffff28]
JZ 0x000a399f
CMP EAX,EDX
JNZ 0x000a4506
CMP byte ptr [EBP + 0xfffffece],0x0
MOV EAX,dword ptr [EBP + 0xffffff40]
MOV EDX,dword ptr [EBP + 0xffffff3c]
JZ 0x000a3c68
CMP EDX,EAX
JNZ 0x000a44e7
MOV EAX,dword ptr [EBP + 0xffffff48]
CMP dword ptr [EBP + 0xffffff4c],EAX
JNZ 0x000a44e7
CMP byte ptr [EBP + 0xfffffecf],0x0
JZ 0x000a3d58
MOV EAX,dword ptr [EBP + 0xfffffe74]
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JZ 0x000a282f
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x00180740
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffe74]
MOV EAX,dword ptr [EAX + 0x4]
TEST EAX,EAX
JZ 0x000a284e
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x00180740
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffe74]
MOV EAX,dword ptr [EAX + 0xc]
TEST EAX,EAX
JZ 0x000a286d
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x00180740
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffe74]
MOV EAX,dword ptr [EAX + 0x18]
TEST EAX,EAX
JZ 0x000a288c
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x00180740
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EAX + 0x54],0x0
MOV EAX,dword ptr [EBP + 0xffffff48]
TEST EAX,EAX
JZ 0x000a28b2
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xffffff3c]
TEST EAX,EAX
JZ 0x000a28ce
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xffffff30]
TEST EAX,EAX
JZ 0x000a28ea
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xffffff24]
TEST EAX,EAX
JZ 0x000a2906
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xffffff54]
TEST EAX,EAX
JZ 0x000a2922
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
SUB ESP,0xc
MOV EDI,dword ptr [EBP + 0xfffffee4]
PUSH dword ptr [EBP + 0xfffffea8]
MOV EBX,EDI
CALL 0x001807a0
POP EDX
PUSH dword ptr [EBP + 0xfffffeac]
CALL 0x001807a0
ADD ESP,0x10
LEA ESP,[EBP + -0xc]
POP EBX
POP ESI
POP EDI
POP EBP
RET
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffeb0]
CALL 0x0004dee0
MOV EDX,dword ptr [EBP + 0x8]
ADD ESP,0x10
MOV ECX,dword ptr [EDX + 0xa4]
ADD dword ptr [EBP + 0xfffffed8],ECX
MOV EAX,dword ptr [EBP + 0xfffffed8]
TEST EAX,EAX
JNZ 0x000a1fe2
NOP
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe98]
MOV EBX,dword ptr [EBP + 0xfffffee4]
CALL 0x000263b0
ADD ESP,0x10
PUSH dword ptr [EBP + 0xfffffed8]
PUSH EDI
PUSH EAX
PUSH dword ptr [EBP + 0x8]
CALL 0x00091980
ADD ESP,0x10
JMP 0x000a1f88
SUB ESP,0x8
LEA EAX,[EBP + 0xffffff18]
PUSH EAX
PUSH dword ptr [EBP + 0x8]
MOV dword ptr [EBP + 0xfffffeb0],EAX
CALL 0x000964f0
ADD ESP,0x10
TEST AL,AL
JZ 0x000a2b28
MOV EAX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV ECX,0xa
LEA EDI,[EAX + 0xfff210c6]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x000a2b28
CMP byte ptr [EBP + 0xfffffec4],0x0
JNZ 0x000a2b18
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EBP + 0xfffffece],0x0
MOVZX EAX,byte ptr [EAX + 0x11d]
JNZ 0x000a3e08
TEST AL,AL
JZ 0x000a36b0
MOV EBX,dword ptr [EBP + 0xffffff14]
MOV EDX,dword ptr [EBP + 0xfffffea8]
MOV EAX,dword ptr [EBP + 0x8]
MOV EDI,dword ptr [EDX + EBX*0x4]
MOV EDX,dword ptr [EBP + 0xfffffeac]
ADD EAX,0x120
MOV ESI,dword ptr [EDX + EBX*0x4]
MOV EDX,dword ptr [EBP + 0xfffffed8]
MOV dword ptr [EBP + 0xfffffee0],EAX
LEA EAX,[EBP + -0x80]
MOV dword ptr [EBP + 0xfffffe8c],EAX
CALL 0x000926b0
MOV ECX,dword ptr [EBP + 0xfffffed0]
MOV dword ptr [EBP + -0x68],EBX
SUB ESP,0x8
MOV dword ptr [EBP + -0x64],ESI
MOV dword ptr [EBP + -0x60],EDI
MOV EAX,dword ptr [ECX]
MOV dword ptr [EBP + -0x5c],EAX
MOV EAX,dword ptr [ECX + 0x4]
MOV dword ptr [EBP + -0x58],EAX
MOV EAX,dword ptr [ECX + 0x8]
MOV dword ptr [EBP + -0x54],EAX
MOV EAX,dword ptr [ECX + 0xc]
MOV dword ptr [EBP + -0x50],EAX
MOV EAX,dword ptr [ECX + 0x10]
MOV dword ptr [EBP + -0x4c],EAX
MOV EAX,dword ptr [ECX + 0x14]
MOV dword ptr [EBP + -0x48],EAX
MOV EAX,dword ptr [ECX + 0x18]
MOV dword ptr [EBP + -0x44],EAX
MOV EAX,dword ptr [ECX + 0x1c]
MOV dword ptr [EBP + -0x40],EAX
MOV EAX,dword ptr [ECX + 0x20]
MOV dword ptr [EBP + -0x3c],EAX
MOV EAX,dword ptr [ECX + 0x24]
MOV dword ptr [EBP + -0x38],EAX
MOV EAX,dword ptr [ECX + 0x28]
MOV dword ptr [EBP + -0x34],EAX
MOV EAX,dword ptr [ECX + 0x2c]
MOV dword ptr [EBP + -0x30],EAX
MOV EAX,dword ptr [ECX + 0x30]
MOV dword ptr [EBP + -0x2c],EAX
MOV EAX,dword ptr [ECX + 0x34]
MOV dword ptr [EBP + -0x28],EAX
MOV EAX,dword ptr [ECX + 0x38]
MOV dword ptr [EBP + -0x24],EAX
MOV EAX,dword ptr [ECX + 0x3c]
PUSH dword ptr [EBP + 0xfffffe8c]
MOV ECX,dword ptr [EBP + 0xfffffe6c]
PUSH dword ptr [EBP + 0xfffffee0]
MOV dword ptr [EBP + -0x20],EAX
MOV dword ptr [EBP + -0x58],ECX
CALL 0x000a10f0
MOV EAX,dword ptr [EBP + -0x80]
LEA EDX,[EBP + -0x78]
ADD ESP,0x10
CMP EAX,EDX
JZ 0x000a239b
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
JMP 0x000a239b
MOV EAX,dword ptr [EBP + 0xfffffe6c]
MOV dword ptr [EBP + 0xfffffee0],EAX
LEA ESI,[ESI]
CMP byte ptr [EBP + 0xfffffecf],0x0
JNZ 0x000a2c98
MOV EAX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EBP + 0xffffff14]
CMP byte ptr [EAX + 0x11d],0x0
LEA EDI,[ESI*0x4 + 0x0]
JZ 0x000a2b5e
MOV EAX,dword ptr [EBP + 0xffffff18]
TEST byte ptr [EAX + 0x8],0x2
JNZ 0x000a3e70
CMP byte ptr [EBP + 0xfffffece],0x0
JZ 0x000a2d10
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x38]
MOV dword ptr [EAX + EDI*0x1],0x1
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x84]
MOV dword ptr [EAX + ESI*0x8],0xffffffff
MOV dword ptr [EAX + ESI*0x8 + 0x4],0xffffffff
JMP 0x000a23a1
MOV EAX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV ECX,0x10
LEA EDI,[EAX + 0xfff22e8d]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x000a24fe
CMP dword ptr [EBP + 0xfffffee0],0x7
JNZ 0x000a2522
MOV EAX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV ECX,0x13
LEA EDI,[EAX + 0xfff211bc]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x000a3260
MOV EBX,EDX
MOV ESI,dword ptr [EBP + 0xffffff54]
MOV EAX,0x1
MOV ECX,EDX
SHR EBX,0x5
SHL EAX,CL
AND EAX,dword ptr [ESI + EBX*0x4]
SETNZ BL
JZ 0x000a2551
LEA ESI,[ESI]
MOV EAX,dword ptr [EBP + 0x10]
MOV ESI,dword ptr [EAX + 0x1d0]
TEST ESI,ESI
JZ 0x000a2f68
TEST BL,BL
JZ 0x000a259c
LEA ESI,[ESI]
MOV ESI,EDX
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x38]
MOV dword ptr [EAX + ESI*0x4],0x0
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x84]
MOV dword ptr [EAX + ESI*0x8],0xffffffff
MOV dword ptr [EAX + ESI*0x8 + 0x4],0xffffffff
JMP 0x000a23a1
MOV EAX,dword ptr [EBP + 0x8]
SUB ESP,0x8
MOV dword ptr [EBP + -0x80],EAX
MOV EAX,dword ptr [EBP + 0xffffff14]
MOV dword ptr [EBP + -0x7c],EAX
LEA EAX,[EBP + -0x80]
PUSH EAX
MOV EAX,dword ptr [EBP + 0xc]
PUSH dword ptr [EAX + 0x158]
CALL 0x000a0800
ADD ESP,0x10
JMP 0x000a2330
MOV EAX,dword ptr [EBP + 0xfffffec8]
MOV EAX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x8]
TEST EAX,EAX
JZ 0x000a4314
MOV ECX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EBP + 0xffffff14]
CMP byte ptr [EAX + 0x18b1],0x0
MOV EDX,dword ptr [ECX + 0x38]
LEA EDI,[ESI*0x4 + 0x0]
MOV EDX,dword ptr [EDX + ESI*0x4]
JZ 0x000a2f0d
TEST EDX,EDX
JZ 0x000a33f8
MOV ECX,dword ptr [EBP + 0xffffff18]
TEST byte ptr [ECX + 0x8],0x2
JNZ 0x000a2e98
MOV EAX,dword ptr [EAX + 0x5934]
TEST EAX,EAX
JZ 0x000a2cfa
TEST byte ptr [ECX + 0x8],0x2
JNZ 0x000a3dc0
CMP EDX,0x2
JZ 0x000a23a1
CMP byte ptr [EBP + 0xfffffece],0x0
JNZ 0x000a2b6b
MOV EAX,dword ptr [EBP + 0xfffffeac]
MOV EDX,dword ptr [EBP + 0xfffffea8]
SUB ESP,0xc
LEA EBX,[EBP + -0x80]
MOV EAX,dword ptr [EAX + EDI*0x1]
PUSH EBX
PUSH dword ptr [EDX + EDI*0x1]
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffee0]
PUSH dword ptr [EBP + 0xfffffeb0]
PUSH dword ptr [EBP + 0xfffffed8]
PUSH ESI
PUSH dword ptr [EBP + 0x8]
PUSH dword ptr [EBP + 0x10]
MOV dword ptr [EBP + 0xfffffe94],EAX
CALL 0x0008ff40
MOV ECX,dword ptr [EBP + 0x8]
ADD ESP,0x30
MOV EDX,dword ptr [ECX + 0x38]
MOV ECX,dword ptr [EBP + -0x80]
MOV dword ptr [EDX + EDI*0x1],EAX
MOV EDX,dword ptr [EBP + -0x7c]
MOV EAX,dword ptr [EBP + 0x8]
MOV EBX,EDX
MOV EAX,dword ptr [EAX + 0x84]
AND EBX,ECX
LEA EAX,[EAX + ESI*0x8]
CMP EBX,-0x1
JZ 0x000a33e0
MOV dword ptr [EAX],ECX
MOV dword ptr [EAX + 0x4],EDX
MOV EAX,dword ptr [EBP + -0x80]
AND EAX,dword ptr [EBP + -0x7c]
CMP EAX,-0x1
JNZ 0x000a2d9d
MOV EAX,dword ptr [EBP + 0xfffffe94]
TEST EAX,EAX
JNZ 0x000a3e60
CMP byte ptr [EBP + 0xfffffec4],0x0
JNZ 0x000a239b
MOV EAX,dword ptr [EBP + 0xfffffec8]
MOV EAX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x8]
TEST EAX,EAX
JZ 0x000a43df
CMP byte ptr [EAX + 0x192d],0x0
JZ 0x000a239b
MOV EAX,dword ptr [EBP + 0xffffff18]
TEST byte ptr [EAX + 0x8],0x2
JNZ 0x000a239b
MOV EDX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV ECX,0xc
LEA EDI,[EDX + 0xfff1fac9]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x000a3970
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV ECX,0xd
LEA EDI,[EDX + 0xfff22eab]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x000a3970
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV ECX,0xd
LEA EDI,[EBX + 0xfff1fad5]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x000a2e62
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV ECX,0xe
LEA EDI,[EBX + 0xfff22eb8]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x000a239b
MOV EAX,dword ptr [EBP + 0xffffff4c]
CMP EAX,dword ptr [EBP + 0xffffff50]
JZ 0x000a42bc
MOV EDX,dword ptr [EBP + 0xffffff14]
ADD EAX,0x4
MOV dword ptr [EAX + -0x4],EDX
MOV ESI,dword ptr [EBP + 0xffffff14]
MOV dword ptr [EBP + 0xffffff4c],EAX
JMP 0x000a23a1
MOV EAX,dword ptr [EBP + 0xc]
SUB ESP,0x4
LEA EDX,[EBP + 0xfffffef4]
MOV dword ptr [EBP + -0x7c],ESI
MOV EAX,dword ptr [EAX + 0x158]
MOV dword ptr [EBP + 0xfffffe94],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EBP + -0x80],EAX
LEA EAX,[EBP + -0x80]
PUSH EAX
MOV dword ptr [EBP + 0xfffffe8c],EAX
MOV EAX,dword ptr [EBP + 0xfffffe94]
ADD EAX,0x28
PUSH EAX
PUSH EDX
CALL 0x00065700
MOV EAX,dword ptr [EBP + 0xfffffec8]
MOV EDX,dword ptr [EBP + 0xfffffef4]
ADD ESP,0xc
MOV EAX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x8]
TEST EDX,EDX
JZ 0x000a38b7
TEST EAX,EAX
JZ 0x000a4330
MOV EBX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EBP + 0xffffff14]
MOV EDX,dword ptr [EBX + 0x38]
LEA EDI,[ESI*0x4 + 0x0]
MOV EDX,dword ptr [EDX + ESI*0x4]
MOV EAX,dword ptr [EAX + 0x5934]
TEST EAX,EAX
JZ 0x000a2cfa
MOV ECX,dword ptr [EBP + 0xffffff18]
TEST EDX,EDX
JNZ 0x000a2cf0
MOV EAX,dword ptr [EBP + 0x8]
MOV EDX,dword ptr [EAX + 0x84]
MOV EAX,dword ptr [EDX + ESI*0x8 + 0x4]
AND EAX,dword ptr [EDX + ESI*0x8]
CMP EAX,-0x1
JZ 0x000a23a1
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff23134]
PUSH EAX
LEA EAX,[EBX + 0xfff228b8]
PUSH 0x6f9
PUSH EAX
CALL 0x0005f0b0
TEST BL,BL
JNZ 0x000a2c38
JMP 0x000a22b0
MOV EAX,dword ptr [EBP + 0xffffff28]
CMP EAX,dword ptr [EBP + 0xffffff2c]
JZ 0x000a3e40
MOV EDX,dword ptr [EBP + 0xffffff14]
ADD EAX,0x4
MOV dword ptr [EAX + -0x4],EDX
MOV ESI,dword ptr [EBP + 0xffffff14]
MOV dword ptr [EBP + 0xffffff28],EAX
JMP 0x000a23a1
MOV EAX,dword ptr [EBP + 0xfffffec8]
MOV EAX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x8]
TEST EAX,EAX
JZ 0x000a4417
CMP byte ptr [EAX + 0x1a25],0x0
JNZ 0x000a241a
MOV ECX,dword ptr [EBP + 0xffffff14]
MOV EDX,dword ptr [EBP + 0xffffff54]
MOV EAX,0x1
MOV EBX,ECX
SHL EAX,CL
SHR EBX,0x5
OR dword ptr [EDX + EBX*0x4],EAX
JMP 0x000a241a
MOV EDX,dword ptr [EAX + 0x8]
TEST EDX,EDX
JZ 0x000a4433
CMP byte ptr [EDX + 0x1a25],0x0
JNZ 0x000a24b3
MOV ECX,dword ptr [EBP + 0xffffff14]
MOV EBX,dword ptr [EBP + 0xffffff54]
MOV EDX,0x1
MOV ESI,ECX
SHL EDX,CL
SHR ESI,0x5
OR dword ptr [EBX + ESI*0x4],EDX
JMP 0x000a24b3
MOV ESI,dword ptr [EBP + 0xfffffed8]
MOV EAX,dword ptr [EBP + 0xc]
SUB ESP,0xc
LEA EBX,[EBP + -0x80]
MOV dword ptr [EBP + 0xfffffe8c],EBX
MOV EBX,dword ptr [EBP + 0xfffffee4]
LEA EDX,[EBP + -0x78]
MOV EDI,dword ptr [EAX + 0x158]
MOV EAX,dword ptr [EBP + 0xffffff14]
PUSH ESI
MOV dword ptr [EBP + 0xfffffe70],EDX
MOV dword ptr [EBP + 0xfffffe68],EDI
MOV dword ptr [EBP + 0xfffffe80],EAX
MOV dword ptr [EBP + -0x80],EDX
CALL 0x000265f0
ADD ESP,0x10
ADD EAX,ESI
PUSH 0x0
PUSH EAX
PUSH ESI
PUSH dword ptr [EBP + 0xfffffe8c]
CALL 0x0004cf80
MOV EAX,dword ptr [EBP + 0xfffffe80]
MOV EDX,dword ptr [EBP + 0x8]
ADD ESP,0x10
MOV ESI,dword ptr [EDI + 0x4c]
MOV dword ptr [EBP + 0xffffff6c],EAX
LEA EAX,[EDI + 0x48]
MOV dword ptr [EBP + 0xffffff68],EDX
MOV dword ptr [EBP + 0xfffffe78],EAX
TEST ESI,ESI
JZ 0x000a3206
MOV ECX,dword ptr [EBP + -0x7c]
MOV EAX,dword ptr [EBP + -0x80]
MOV EDI,dword ptr [EBP + 0xfffffe78]
MOV dword ptr [EBP + 0xfffffe94],EAX
MOV dword ptr [EBP + 0xfffffe90],EDI
MOV dword ptr [EBP + 0xfffffeb0],ECX
JMP 0x000a30e5
MOV dword ptr [EBP + 0xfffffe90],ESI
MOV ESI,dword ptr [ESI + 0x8]
TEST ESI,ESI
JZ 0x000a3129
MOV EDI,dword ptr [ESI + 0x14]
MOV EAX,dword ptr [EBP + 0xfffffeb0]
CMP EDI,EAX
CMOVBE EAX,EDI
TEST EAX,EAX
JZ 0x000a3116
SUB ESP,0x4
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe94]
PUSH dword ptr [ESI + 0x10]
CALL 0x00026130
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000a311e
MOV EAX,EDI
SUB EAX,dword ptr [EBP + 0xfffffeb0]
TEST EAX,EAX
JNS 0x000a30d8
MOV ESI,dword ptr [ESI + 0xc]
TEST ESI,ESI
JNZ 0x000a30e5
MOV EDI,dword ptr [EBP + 0xfffffe90]
MOV ECX,dword ptr [EBP + 0xfffffeb0]
CMP dword ptr [EBP + 0xfffffe78],EDI
JZ 0x000a320c
MOV ESI,dword ptr [EDI + 0x14]
CMP ECX,ESI
MOV EAX,ESI
CMOVBE EAX,ECX
TEST EAX,EAX
JZ 0x000a3174
SUB ESP,0x4
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
PUSH dword ptr [EDI + 0x10]
PUSH dword ptr [EBP + 0xfffffe94]
CALL 0x00026130
ADD ESP,0x10
MOV ECX,dword ptr [EBP + 0xfffffeb0]
TEST EAX,EAX
JNZ 0x000a3178
MOV EAX,ECX
SUB EAX,ESI
TEST EAX,EAX
JS 0x000a320c
MOV EAX,dword ptr [EBP + 0xfffffe80]
XOR EDX,EDX
XOR EAX,dword ptr [EBP + 0x8]
LEA EBX,[EDI + 0x28]
MOV ECX,EAX
MOV dword ptr [EBP + 0xfffffeb0],EAX
DIV dword ptr [EDI + 0x2c]
PUSH ECX
MOV dword ptr [EBP + 0xfffffe90],EBX
LEA EAX,[EBP + 0xffffff68]
PUSH EAX
PUSH EDX
PUSH EBX
MOV dword ptr [EBP + 0xfffffe94],EDX
CALL 0x0008bfc0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000a3298
MOV ESI,dword ptr [EAX]
TEST ESI,ESI
JZ 0x000a3298
MOV EAX,dword ptr [EBP + -0x80]
CMP EAX,dword ptr [EBP + 0xfffffe70]
JZ 0x000a2360
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
JMP 0x000a2360
MOV ECX,dword ptr [ECX + 0x14]
XOR EBX,EBX
MOV dword ptr [EBP + 0xfffffeb4],EBX
MOV dword ptr [EBP + 0xfffffeb0],ECX
JMP 0x000a261a
MOV EDI,dword ptr [EBP + 0xfffffe78]
SUB ESP,0x8
LEA EDX,[EBP + 0xffffff13]
MOV ECX,dword ptr [EBP + 0xfffffee4]
MOV EAX,dword ptr [EBP + 0xfffffe8c]
PUSH EDX
LEA EDX,[EBP + 0xffffff1c]
PUSH EDX
LEA EDX,[ECX + 0xfff2392c]
PUSH EDX
MOV EDX,dword ptr [EBP + 0xfffffe68]
MOV dword ptr [EBP + 0xffffff1c],EAX
LEA EAX,[EBP + 0xffffff04]
ADD EDX,0x44
PUSH EDI
PUSH EDX
PUSH EAX
CALL 0x000a0360
ADD ESP,0x1c
MOV EDI,dword ptr [EBP + 0xffffff04]
JMP 0x000a3180
SUB ESP,0x4
PUSH EDX
PUSH dword ptr [EBP + 0x10]
PUSH dword ptr [EBP + 0x8]
CALL 0x0009a280
MOV EDX,dword ptr [EBP + 0xffffff14]
MOV ESI,dword ptr [EBP + 0xffffff54]
MOV EAX,0x1
ADD ESP,0x10
MOV EBX,EDX
MOV ECX,EDX
SHR EBX,0x5
SHL EAX,CL
OR dword ptr [ESI + EBX*0x4],EAX
JMP 0x000a2c38
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH 0x10
CALL 0x0017ebf0
MOV dword ptr [EAX],0x0
MOV ESI,EAX
MOV EAX,dword ptr [EBP + 0x8]
LEA EDX,[EDI + 0x38]
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV dword ptr [ESI + 0x4],EAX
MOV EAX,dword ptr [EBP + 0xfffffe80]
MOV dword ptr [ESI + 0x8],EAX
MOV EAX,dword ptr [EDI + 0x3c]
MOV dword ptr [ESP],0x1
MOV dword ptr [EBP + 0xffffff20],EAX
LEA EAX,[EBP + 0xfffffef8]
PUSH dword ptr [EDI + 0x34]
PUSH dword ptr [EDI + 0x2c]
PUSH EDX
PUSH EAX
CALL 0x001c5e50
ADD ESP,0x1c
CMP byte ptr [EBP + 0xfffffef8],0x0
MOV EAX,dword ptr [EBP + 0xfffffefc]
JNZ 0x000a3680
MOV EAX,dword ptr [EBP + 0xfffffeb0]
MOV EDX,dword ptr [EBP + 0xfffffe94]
MOV dword ptr [ESI + 0xc],EAX
MOV EAX,dword ptr [EDI + 0x28]
LEA EBX,[EDX*0x4 + 0x0]
MOV EAX,dword ptr [EAX + EDX*0x4]
TEST EAX,EAX
JZ 0x000a3f88
MOV EAX,dword ptr [EAX]
MOV dword ptr [ESI],EAX
MOV EAX,dword ptr [EDI + 0x28]
MOV EAX,dword ptr [EAX + EDX*0x4]
MOV dword ptr [EAX],ESI
ADD dword ptr [EDI + 0x34],0x1
JMP 0x000a31c9
SUB ESP,0xc
LEA EAX,[EBP + 0xffffff54]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffebc]
PUSH dword ptr [EBP + 0xfffffec0]
PUSH dword ptr [EBP + 0xfffffea4]
PUSH dword ptr [EBP + 0xfffffed8]
PUSH EDX
PUSH dword ptr [EBP + 0x10]
PUSH dword ptr [EBP + 0xc]
PUSH dword ptr [EBP + 0x8]
CALL 0x0009e290
ADD ESP,0x30
TEST AL,AL
JNZ 0x000a36e0
MOV EDX,dword ptr [EBP + 0xffffff14]
JMP 0x000a2c38
MOV EDX,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [EDX + 0x54]
MOV dword ptr [EBP + 0xfffffe74],EBX
TEST EBX,EBX
JZ 0x000a3448
MOV EBX,dword ptr [EBP + 0xc]
MOV EDX,dword ptr [EBX + 0x15c]
CMP byte ptr [EDX + 0x50],0x0
JNZ 0x000a1e0a
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff23134]
PUSH EAX
LEA EAX,[EBX + 0xfff228b8]
PUSH 0x59f
PUSH EAX
CALL 0x0005f0b0
MOV dword ptr [EAX],0xffffffff
MOV dword ptr [EAX + 0x4],0xffffffff
JMP 0x000a2d84
MOV EDX,dword ptr [ECX + 0x84]
MOV EAX,dword ptr [EDX + ESI*0x8 + 0x4]
AND EAX,dword ptr [EDX + ESI*0x8]
CMP EAX,-0x1
JZ 0x000a23a1
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH ECX
LEA EAX,[EBX + 0xfff23134]
PUSH EAX
LEA EAX,[EBX + 0xfff228b8]
PUSH 0x6e4
PUSH EAX
CALL 0x0005f0b0
MOV ECX,dword ptr [EBP + 0x8]
MOV ECX,dword ptr [ECX + 0x54]
MOV dword ptr [EBP + 0xfffffe74],ECX
TEST ECX,ECX
JNZ 0x000a1e0a
LEA ESI,[ESI]
MOV ESI,dword ptr [EBP + 0x14]
TEST ESI,ESI
JZ 0x000a444f
MOV ESI,dword ptr [EBP + 0xfffffed4]
TEST ESI,ESI
JZ 0x000a2947
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH 0x20
CALL 0x0017ebf0
ADD ESP,0x10
MOV EBX,EAX
MOV dword ptr [EBP + 0xfffffe74],EAX
MOV EAX,dword ptr [EBP + 0xfffffed4]
SHL EAX,0x6
PUSH EAX
PUSH dword ptr [EBP + 0x14]
PUSH EBX
PUSH dword ptr [EBP + 0x8]
CALL 0x00091c10
MOV EAX,dword ptr [EBP + 0x8]
MOV EDX,EBX
MOV ECX,dword ptr [EBX]
ADD ESP,0x10
MOV dword ptr [EAX + 0x54],EBX
MOV EBX,dword ptr [EBX + 0x8]
MOV EAX,dword ptr [EBP + 0xfffffec8]
MOV dword ptr [EBP + 0xfffffea4],ECX
MOV dword ptr [EBP + 0xfffffebc],EBX
MOV ECX,dword ptr [EDX + 0xc]
MOV EBX,dword ptr [EDX + 0x10]
MOV EAX,dword ptr [EAX]
MOV dword ptr [EBP + 0xfffffea0],ECX
MOV ECX,dword ptr [EDX + 0x18]
MOV dword ptr [EBP + 0xfffffe88],EBX
MOV EAX,dword ptr [EAX + 0x8]
MOV EBX,dword ptr [EDX + 0x1c]
MOV EDX,dword ptr [EDX + 0x4]
MOV dword ptr [EBP + 0xfffffe84],ECX
MOV dword ptr [EBP + 0xfffffe7c],EBX
MOV dword ptr [EBP + 0xfffffec0],EDX
TEST EAX,EAX
JNZ 0x000a446e
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
SUB ESP,0xc
LEA EAX,[EBP + 0xffffff18]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffed8]
PUSH EDX
PUSH dword ptr [EBP + 0x10]
PUSH dword ptr [EBP + 0x8]
CALL 0x0009cac0
ADD ESP,0x20
TEST AL,AL
JNZ 0x000a2583
MOV EDX,dword ptr [EBP + 0xffffff14]
JMP 0x000a2c38
CMP byte ptr [EBP + 0xfffffecf],0x0
JNZ 0x000a2922
MOV EAX,dword ptr [EBP + 0x14]
MOV ESI,dword ptr [EAX]
TEST ESI,ESI
JZ 0x000a357c
SUB ESP,0xc
MOV EDI,dword ptr [EBP + 0xfffffee4]
PUSH ESI
MOV EBX,EDI
CALL 0x0005cea0
POP ECX
POP EDI
PUSH 0xc
PUSH ESI
CALL 0x00180780
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0x14]
MOV ESI,dword ptr [EAX + 0x4]
MOV dword ptr [EAX],0x0
TEST ESI,ESI
JZ 0x000a35aa
SUB ESP,0xc
MOV EDI,dword ptr [EBP + 0xfffffee4]
PUSH ESI
MOV EBX,EDI
CALL 0x0005cea0
POP EAX
POP EDX
PUSH 0xc
PUSH ESI
CALL 0x00180780
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0x14]
MOV dword ptr [EAX + 0x4],0x0
JMP 0x000a2922
MOV EAX,dword ptr [EBP + 0x8]
MOV ECX,dword ptr [EAX + 0x3c]
MOV EDX,dword ptr [EAX + 0x38]
MOV EAX,ECX
SUB EAX,EDX
SAR EAX,0x2
CMP dword ptr [EBP + 0xfffffed4],EAX
JA 0x000a3897
JNC 0x000a35ee
ADD EDX,dword ptr [EBP + 0xfffffeb8]
CMP ECX,EDX
JZ 0x000a35ee
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EAX + 0x3c],EDX
MOV EAX,dword ptr [EBP + 0x8]
MOV EDX,dword ptr [EAX + 0x88]
MOV ECX,dword ptr [EAX + 0x84]
MOV EAX,EDX
SUB EAX,ECX
SAR EAX,0x3
CMP dword ptr [EBP + 0xfffffed4],EAX
JA 0x000a419b
JNC 0x000a2035
MOV EAX,dword ptr [EBP + 0xfffffed4]
LEA EAX,[ECX + EAX*0x8]
CMP EDX,EAX
JZ 0x000a2035
MOV EDX,dword ptr [EBP + 0x8]
MOV dword ptr [EDX + 0x88],EAX
JMP 0x000a2035
MOV ESI,0x1
LEA ESI,[ESI]
MOV ECX,dword ptr [EBP + 0xfffffee4]
SUB ESP,0xc
LEA EAX,[ECX + 0xfff22dec]
MOV EBX,ECX
PUSH EAX
CALL 0x000263b0
ADD ESP,0x10
PUSH EDI
PUSH ESI
PUSH EAX
PUSH dword ptr [EBP + 0x8]
CALL 0x00091980
MOV EAX,dword ptr [EBP + 0xffffff48]
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000a28a0
JMP 0x000a28b2
SUB ESP,0x4
LEA EDX,[EBP + 0xffffff20]
PUSH EDX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe90]
CALL 0x0008f5f0
MOV EAX,dword ptr [EBP + 0xfffffeb0]
XOR EDX,EDX
ADD ESP,0x10
DIV dword ptr [EDI + 0x2c]
MOV dword ptr [EBP + 0xfffffe94],EDX
JMP 0x000a3301
MOV EAX,dword ptr [EBP + 0xffffff34]
CMP EAX,dword ptr [EBP + 0xffffff38]
JZ 0x000a4257
MOV EDX,dword ptr [EBP + 0xffffff14]
ADD EAX,0x4
MOV dword ptr [EAX + -0x4],EDX
MOV ESI,dword ptr [EBP + 0xffffff14]
MOV dword ptr [EBP + 0xffffff34],EAX
JMP 0x000a23a1
XOR EBX,EBX
JMP 0x000a2583
CMP EAX,EBX
JZ 0x000a27a3
LEA EAX,[EBP + -0x80]
MOV dword ptr [EBP + 0xfffffe8c],EAX
LEA ESI,[ESI]
NOP
MOV EAX,dword ptr [EBX]
MOV ECX,dword ptr [EBP + 0xfffffea8]
SUB ESP,0x8
PUSH dword ptr [ECX + EAX*0x4]
MOV ECX,dword ptr [EBP + 0xfffffeac]
MOV EDX,EAX
SHL EDX,0x6
ADD EDX,dword ptr [EBP + 0xfffffea4]
PUSH dword ptr [ECX + EAX*0x4]
PUSH dword ptr [EBP + 0xfffffe8c]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe7c]
PUSH dword ptr [EBP + 0xfffffe84]
PUSH dword ptr [EBP + 0xfffffe88]
PUSH dword ptr [EBP + 0xfffffea0]
PUSH dword ptr [EBP + 0x10]
PUSH dword ptr [EBP + 0x8]
MOV dword ptr [EBP + -0x80],EDX
CALL 0x00096690
ADD ESP,0x30
ADD EBX,0x4
CMP dword ptr [EBP + 0xffffff34],EBX
JNZ 0x000a3700
JMP 0x000a27a3
MOV EAX,dword ptr [EBP + 0x8]
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV EDI,dword ptr [EAX + 0x124]
MOV EAX,EDI
SUB EAX,ESI
MOV dword ptr [EBP + 0xfffffee0],EAX
IMUL EAX,dword ptr [EBP + 0xfffffec4],0x64
PUSH EAX
MOV dword ptr [EBP + 0xfffffec4],EAX
CALL 0x0017ebf0
MOV dword ptr [EBP + 0xfffffed8],EAX
ADD ESP,0x10
CMP ESI,EDI
JZ 0x000a3faf
LEA EDX,[EDI + -0x64]
LEA EAX,[ESI + 0x8]
SUB EDX,ESI
SHR EDX,0x2
IMUL EDX,EDX,0x28f5c29
AND EDX,0x3fffffff
IMUL EDX,EDX,0x64
LEA ESI,[ESI + EDX*0x1 + 0x6c]
MOV EDX,dword ptr [EBP + 0xfffffed8]
JMP 0x000a386b
MOV dword ptr [EDX],ECX
MOV ECX,dword ptr [EAX]
MOV dword ptr [EDX + 0x8],ECX
MOV ECX,dword ptr [EAX + -0x4]
ADD EDX,0x64
MOV dword ptr [EDX + -0x60],ECX
MOV ECX,dword ptr [EAX + 0x10]
MOV dword ptr [EAX + -0x8],EAX
ADD EAX,0x64
MOV dword ptr [EAX + -0x68],0x0
MOV byte ptr [EAX + -0x64],0x0
MOV dword ptr [EDX + -0x4c],ECX
MOV ECX,dword ptr [EAX + -0x50]
MOV dword ptr [EDX + -0x48],ECX
MOV ECX,dword ptr [EAX + -0x4c]
MOV dword ptr [EDX + -0x44],ECX
MOV ECX,dword ptr [EAX + -0x48]
MOV dword ptr [EDX + -0x40],ECX
MOV ECX,dword ptr [EAX + -0x44]
MOV dword ptr [EDX + -0x3c],ECX
MOV ECX,dword ptr [EAX + -0x40]
MOV dword ptr [EDX + -0x38],ECX
MOV ECX,dword ptr [EAX + -0x3c]
MOV dword ptr [EDX + -0x34],ECX
MOV ECX,dword ptr [EAX + -0x38]
MOV dword ptr [EDX + -0x30],ECX
MOV ECX,dword ptr [EAX + -0x34]
MOV dword ptr [EDX + -0x2c],ECX
MOV ECX,dword ptr [EAX + -0x30]
MOV dword ptr [EDX + -0x28],ECX
MOV ECX,dword ptr [EAX + -0x2c]
MOV dword ptr [EDX + -0x24],ECX
MOV ECX,dword ptr [EAX + -0x28]
MOV dword ptr [EDX + -0x20],ECX
MOV ECX,dword ptr [EAX + -0x24]
MOV dword ptr [EDX + -0x1c],ECX
MOV ECX,dword ptr [EAX + -0x20]
MOV dword ptr [EDX + -0x18],ECX
MOV ECX,dword ptr [EAX + -0x1c]
MOV dword ptr [EDX + -0x14],ECX
MOV ECX,dword ptr [EAX + -0x18]
MOV dword ptr [EDX + -0x10],ECX
MOV ECX,dword ptr [EAX + -0x14]
MOV dword ptr [EDX + -0xc],ECX
MOV ECX,dword ptr [EAX + -0x10]
MOV dword ptr [EDX + -0x8],ECX
MOV ECX,dword ptr [EAX + -0xc]
MOV dword ptr [EDX + -0x4],ECX
CMP ESI,EAX
JZ 0x000a3faf
LEA EBX,[EDX + 0x8]
MOV dword ptr [EDX],EBX
MOV ECX,dword ptr [EAX + -0x8]
CMP ECX,EAX
JNZ 0x000a37d0
MOV ECX,dword ptr [EAX]
MOV dword ptr [EDX + 0x8],ECX
MOV ECX,dword ptr [EAX + 0x4]
MOV dword ptr [EDX + 0xc],ECX
MOV ECX,dword ptr [EAX + 0x8]
MOV dword ptr [EDX + 0x10],ECX
MOV ECX,dword ptr [EAX + 0xc]
MOV dword ptr [EDX + 0x14],ECX
JMP 0x000a37d7
MOV EBX,dword ptr [EBP + 0xfffffed4]
SUB ESP,0x8
SUB EBX,EAX
MOV EAX,dword ptr [EBP + 0x8]
PUSH EBX
ADD EAX,0x38
PUSH EAX
CALL 0x000709d0
ADD ESP,0x10
JMP 0x000a35ee
TEST EAX,EAX
JZ 0x000a438b
CMP byte ptr [EAX + 0x2e55],0x0
MOV ESI,dword ptr [EBP + 0xffffff14]
JZ 0x000a2c3a
MOV EAX,dword ptr [EBP + 0x8]
MOV EDX,dword ptr [EBP + 0xfffffee4]
MOV EDI,dword ptr [EAX + 0x4]
MOV EAX,dword ptr [EAX]
LEA EDX,[EDX + 0xffd9a620]
MOV EAX,dword ptr [EAX + 0x40]
CMP EAX,EDX
JNZ 0x000a4293
MOV EAX,dword ptr [EBP + 0x8]
SUB ESP,0x4
PUSH ESI
ADD EAX,0x90
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe8c]
CALL 0x0004e830
MOV EDX,dword ptr [EBP + -0x80]
MOV EAX,dword ptr [EBP + 0xfffffe60]
ADD ESP,0xc
SUB ESP,0xc
MOV dword ptr [EBP + 0xfffffed8],EDX
MOV EDX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EAX]
LEA EAX,[EDX + 0xfff22e18]
MOV EBX,EDX
PUSH EAX
CALL 0x000263b0
MOV EDX,dword ptr [EBP + 0xfffffed8]
ADD ESP,0x10
PUSH EDI
MOV EDI,dword ptr [EBP + 0xfffffee4]
PUSH EDX
PUSH ESI
MOV EBX,EDI
PUSH EAX
CALL 0x0005ad60
MOV EAX,dword ptr [EBP + -0x80]
LEA EDX,[EBP + -0x78]
ADD ESP,0x10
CMP EAX,EDX
JZ 0x000a4181
SUB ESP,0xc
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
JMP 0x000a4181
MOV EAX,dword ptr [EBP + 0xffffff40]
CMP EAX,dword ptr [EBP + 0xffffff44]
JZ 0x000a4273
MOV EDX,dword ptr [EBP + 0xffffff14]
ADD EAX,0x4
MOV dword ptr [EAX + -0x4],EDX
MOV ESI,dword ptr [EBP + 0xffffff14]
MOV dword ptr [EBP + 0xffffff40],EAX
JMP 0x000a23a1
CMP EAX,EDX
JZ 0x000a27d1
MOV dword ptr [EBP + 0xfffffed8],EAX
MOV EAX,dword ptr [EBP + 0x8]
ADD EAX,0x90
MOV dword ptr [EBP + 0xfffffed0],EAX
LEA EAX,[EBP + 0xffffff68]
MOV dword ptr [EBP + 0xfffffec8],EAX
JMP 0x000a3aad
CMP dword ptr [EBP + 0xfffffed4],EBX
JBE 0x000a3a94
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x38]
MOV EBX,dword ptr [EAX + EBX*0x4]
MOV dword ptr [EBP + 0xfffffee0],EBX
CMP EBX,0x2
JZ 0x000a3af8
MOV ESI,dword ptr [EBP + 0xfffffee0]
TEST ESI,ESI
JZ 0x000a3c40
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH 0x14
CALL 0x0017ebf0
MOV EDX,dword ptr [EBP + 0x8]
ADD ESP,0x10
MOV dword ptr [EAX],0x0
MOV dword ptr [EAX + 0x4],0x0
MOV dword ptr [EAX + 0x8],0x0
MOV dword ptr [EAX + 0xc],0x0
MOV dword ptr [EAX + 0x10],0x0
CMP EDI,dword ptr [EDX + 0x28]
JNC 0x000a44a9
MOV EDX,dword ptr [EBP + 0x8]
SUB ESP,0x8
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV EDX,dword ptr [EDX + 0x44]
MOV EDX,dword ptr [EDX]
MOV dword ptr [EDX + EDI*0x4],EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffee0]
PUSH dword ptr [EBP + 0xfffffec8]
PUSH EDI
PUSH dword ptr [EBP + 0x8]
PUSH dword ptr [EBP + 0x10]
CALL 0x0008a810
MOV EDX,dword ptr [EBP + 0x8]
ADD ESP,0x20
MOV EDX,dword ptr [EDX + 0x38]
MOV dword ptr [EDX + EDI*0x4],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x84]
MOV dword ptr [EAX + EDI*0x8],0xffffffff
MOV dword ptr [EAX + EDI*0x8 + 0x4],0xffffffff
ADD dword ptr [EBP + 0xfffffed8],0x4
MOV EAX,dword ptr [EBP + 0xfffffed8]
CMP dword ptr [EBP + 0xffffff28],EAX
JZ 0x000a27d1
MOV EAX,dword ptr [EBP + 0xfffffed8]
MOV EDI,dword ptr [EAX]
MOV ESI,EDI
SHL ESI,0x6
ADD ESI,dword ptr [EBP + 0xfffffea4]
MOV EBX,dword ptr [ESI + 0x2c]
MOV dword ptr [EBP + 0xffffff68],ESI
CMP EBX,0xfeff
JBE 0x000a39d0
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffed0]
CALL 0x0004dee0
MOV EAX,dword ptr [EBP + 0x8]
ADD ESP,0x10
ADD EBX,dword ptr [EAX + 0xa4]
JMP 0x000a39d0
CMP byte ptr [EBP + 0xfffffecf],0x0
JNZ 0x000a3a94
MOV EAX,dword ptr [EBP + 0xffffff68]
MOV EDX,dword ptr [EBP + 0xfffffec0]
MOV EBX,dword ptr [EBP + 0x8]
ADD EDX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x4]
LEA ECX,[EBX + 0x12c]
MOV dword ptr [EBP + 0xfffffec4],EAX
LEA EAX,[EBP + -0x78]
MOV dword ptr [EBP + 0xfffffe70],EAX
MOV dword ptr [EBP + -0x80],EAX
MOV EAX,0xffffffff
MOV dword ptr [EBP + 0xfffffee0],ECX
JZ 0x000a3b5a
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV dword ptr [EBP + 0xfffffebc],EDX
PUSH EDX
CALL 0x000265f0
MOV EDX,dword ptr [EBP + 0xfffffebc]
ADD ESP,0x10
ADD EAX,EDX
LEA EBX,[EBP + -0x80]
PUSH 0x0
PUSH EAX
PUSH EDX
PUSH EBX
CALL 0x0004cf80
MOV dword ptr [EBP + -0x68],EDI
POP EAX
MOV dword ptr [EBP + -0x64],0x0
POP EDX
MOV dword ptr [EBP + -0x60],0x0
MOV EAX,dword ptr [ESI]
MOV dword ptr [EBP + -0x5c],EAX
MOV EAX,dword ptr [ESI + 0x4]
MOV dword ptr [EBP + -0x58],EAX
MOV EAX,dword ptr [ESI + 0x8]
MOV dword ptr [EBP + -0x54],EAX
MOV EAX,dword ptr [ESI + 0xc]
MOV dword ptr [EBP + -0x50],EAX
MOV EAX,dword ptr [ESI + 0x10]
MOV dword ptr [EBP + -0x4c],EAX
MOV EAX,dword ptr [ESI + 0x14]
MOV dword ptr [EBP + -0x48],EAX
MOV EAX,dword ptr [ESI + 0x18]
MOV dword ptr [EBP + -0x44],EAX
MOV EAX,dword ptr [ESI + 0x1c]
MOV dword ptr [EBP + -0x40],EAX
MOV EAX,dword ptr [ESI + 0x20]
MOV dword ptr [EBP + -0x3c],EAX
MOV EAX,dword ptr [ESI + 0x24]
MOV dword ptr [EBP + -0x38],EAX
MOV EAX,dword ptr [ESI + 0x28]
MOV dword ptr [EBP + -0x34],EAX
MOV EAX,dword ptr [ESI + 0x2c]
MOV dword ptr [EBP + -0x30],EAX
MOV EAX,dword ptr [ESI + 0x30]
MOV dword ptr [EBP + -0x2c],EAX
MOV EAX,dword ptr [ESI + 0x34]
MOV dword ptr [EBP + -0x28],EAX
MOV EAX,dword ptr [ESI + 0x38]
MOV dword ptr [EBP + -0x24],EAX
MOV EAX,dword ptr [ESI + 0x3c]
PUSH EBX
PUSH dword ptr [EBP + 0xfffffee0]
MOV dword ptr [EBP + -0x20],EAX
MOV EAX,dword ptr [EBP + 0xfffffec4]
MOV dword ptr [EBP + -0x58],EAX
CALL 0x000a10f0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + -0x80]
CMP EAX,dword ptr [EBP + 0xfffffe70]
JZ 0x000a3c0e
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x38]
MOV dword ptr [EAX + EDI*0x4],0x2
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x84]
MOV dword ptr [EAX + EDI*0x8],0xffffffff
MOV dword ptr [EAX + EDI*0x8 + 0x4],0xffffffff
JMP 0x000a3a94
MOV dword ptr [EAX + EDI*0x4],0x0
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x84]
MOV dword ptr [EAX + EDI*0x8],0xffffffff
MOV dword ptr [EAX + EDI*0x8 + 0x4],0xffffffff
JMP 0x000a3a94
CMP EDX,EAX
JZ 0x000a3cd3
MOV EAX,dword ptr [EBP + 0xfffffe88]
MOV ESI,EDX
MOV dword ptr [EBP + 0xfffffedc],0x0
MOV dword ptr [EBP + 0xfffffed8],EAX
LEA ESI,[ESI]
MOV EAX,dword ptr [ESI]
MOV ECX,dword ptr [EBP + 0xfffffea8]
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH dword ptr [ECX + EAX*0x4]
MOV ECX,dword ptr [EBP + 0xfffffeac]
PUSH dword ptr [ECX + EAX*0x4]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffedc]
PUSH dword ptr [EBP + 0xfffffed8]
PUSH dword ptr [EBP + 0xfffffea0]
PUSH dword ptr [EBP + 0x8]
PUSH 0x0
PUSH dword ptr [EBP + 0x10]
CALL 0x0008e680
ADD ESP,0x30
ADD ESI,0x4
CMP dword ptr [EBP + 0xffffff40],ESI
JNZ 0x000a3c88
MOV EDX,dword ptr [EBP + 0xffffff48]
MOV EAX,dword ptr [EBP + 0xffffff4c]
CMP EAX,EDX
JZ 0x000a2804
MOV EAX,dword ptr [EBP + 0xfffffe88]
MOV ESI,EDX
MOV dword ptr [EBP + 0xfffffedc],0x0
MOV dword ptr [EBP + 0xfffffed8],EAX
NOP
MOV EAX,dword ptr [ESI]
MOV EDX,dword ptr [EBP + 0xfffffea8]
SUB ESP,0xc
MOV ECX,dword ptr [EBP + 0xfffffeac]
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH dword ptr [EDX + EAX*0x4]
PUSH dword ptr [ECX + EAX*0x4]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffedc]
PUSH dword ptr [EBP + 0xfffffed8]
PUSH dword ptr [EBP + 0xfffffea0]
PUSH dword ptr [EBP + 0x8]
PUSH 0x1
PUSH dword ptr [EBP + 0x10]
CALL 0x0008e680
ADD ESP,0x30
ADD ESI,0x4
CMP dword ptr [EBP + 0xffffff4c],ESI
JNZ 0x000a3d00
CMP byte ptr [EBP + 0xfffffecf],0x0
JNZ 0x000a2811
MOV EAX,dword ptr [EBP + 0x14]
MOV ESI,dword ptr [EAX]
TEST ESI,ESI
JZ 0x000a3d7f
SUB ESP,0xc
MOV EDI,dword ptr [EBP + 0xfffffee4]
PUSH ESI
MOV EBX,EDI
CALL 0x0005cea0
POP EAX
POP EDX
PUSH 0xc
PUSH ESI
CALL 0x00180780
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0x14]
MOV ESI,dword ptr [EAX + 0x4]
MOV dword ptr [EAX],0x0
TEST ESI,ESI
JZ 0x000a3dad
SUB ESP,0xc
MOV EDI,dword ptr [EBP + 0xfffffee4]
PUSH ESI
MOV EBX,EDI
CALL 0x0005cea0
POP ECX
POP EDI
PUSH 0xc
PUSH ESI
CALL 0x00180780
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0x14]
MOV dword ptr [EAX + 0x4],0x0
JMP 0x000a2896
MOV EAX,dword ptr [EBP + 0xc]
SUB ESP,0x4
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH ESI
PUSH dword ptr [EBP + 0x8]
PUSH dword ptr [EAX + 0x15c]
CALL 0x00062560
ADD ESP,0x10
TEST AL,AL
JNZ 0x000a403c
MOV EAX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EBP + 0xffffff14]
MOV EAX,dword ptr [EAX + 0x38]
LEA EDI,[ESI*0x4 + 0x0]
MOV EDX,dword ptr [EAX + ESI*0x4]
JMP 0x000a2cfa
MOV EDX,dword ptr [EBP + 0x8]
TEST AL,AL
MOV ESI,dword ptr [EBP + 0xffffff14]
SETNZ AL
MOV EDX,dword ptr [EDX + 0x38]
MOVZX EAX,AL
ADD EAX,0x1
MOV dword ptr [EDX + ESI*0x4],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x84]
MOV dword ptr [EAX + ESI*0x8],0xffffffff
MOV dword ptr [EAX + ESI*0x8 + 0x4],0xffffffff
JMP 0x000a23a1
SUB ESP,0x4
LEA EDX,[EBP + 0xffffff14]
PUSH EDX
PUSH EAX
LEA EAX,[EBP + 0xffffff24]
PUSH EAX
CALL 0x00047200
ADD ESP,0x10
JMP 0x000a239b
MOV EAX,dword ptr [EBP + 0x8]
MOV byte ptr [EAX + 0x4c],0x1
JMP 0x000a2d9d
MOV EBX,dword ptr [EBP + 0xfffffea8]
MOV EDX,dword ptr [EBP + 0xfffffeac]
MOV EAX,dword ptr [EBP + 0x8]
MOV ECX,dword ptr [EBX + EDI*0x1]
MOV EBX,dword ptr [EDX + EDI*0x1]
LEA EDI,[EBP + -0x80]
ADD EAX,0x120
MOV EDX,dword ptr [EBP + 0xfffffed8]
MOV dword ptr [EBP + 0xfffffeb0],EAX
MOV EAX,EDI
MOV dword ptr [EBP + 0xfffffe94],ECX
CALL 0x000926b0
MOV ECX,dword ptr [EBP + 0xfffffe94]
MOV dword ptr [EBP + -0x64],EBX
SUB ESP,0x8
MOV dword ptr [EBP + -0x68],ESI
MOV dword ptr [EBP + -0x60],ECX
MOV ECX,dword ptr [EBP + 0xfffffed0]
MOV EAX,dword ptr [ECX]
MOV dword ptr [EBP + -0x5c],EAX
MOV EAX,dword ptr [ECX + 0x4]
MOV dword ptr [EBP + -0x58],EAX
MOV EAX,dword ptr [ECX + 0x8]
MOV dword ptr [EBP + -0x54],EAX
MOV EAX,dword ptr [ECX + 0xc]
MOV dword ptr [EBP + -0x50],EAX
MOV EAX,dword ptr [ECX + 0x10]
MOV dword ptr [EBP + -0x4c],EAX
MOV EAX,dword ptr [ECX + 0x14]
MOV dword ptr [EBP + -0x48],EAX
MOV EAX,dword ptr [ECX + 0x18]
MOV dword ptr [EBP + -0x44],EAX
MOV EAX,dword ptr [ECX + 0x1c]
MOV dword ptr [EBP + -0x40],EAX
MOV EAX,dword ptr [ECX + 0x20]
MOV dword ptr [EBP + -0x3c],EAX
MOV EAX,dword ptr [ECX + 0x24]
MOV dword ptr [EBP + -0x38],EAX
MOV EAX,dword ptr [ECX + 0x28]
MOV dword ptr [EBP + -0x34],EAX
MOV EAX,dword ptr [ECX + 0x2c]
MOV dword ptr [EBP + -0x30],EAX
MOV EAX,dword ptr [ECX + 0x30]
MOV dword ptr [EBP + -0x2c],EAX
MOV EAX,dword ptr [ECX + 0x34]
MOV dword ptr [EBP + -0x28],EAX
MOV EAX,dword ptr [ECX + 0x38]
MOV EBX,dword ptr [EBP + 0xfffffee0]
MOV dword ptr [EBP + -0x24],EAX
MOV EAX,dword ptr [ECX + 0x3c]
PUSH EDI
PUSH dword ptr [EBP + 0xfffffeb0]
MOV dword ptr [EBP + -0x20],EAX
MOV dword ptr [EBP + -0x58],EBX
CALL 0x000a10f0
MOV EAX,dword ptr [EBP + -0x80]
LEA EDX,[EBP + -0x78]
ADD ESP,0x10
CMP EAX,EDX
JZ 0x000a3f51
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EBP + 0xffffff14]
MOV EAX,dword ptr [EAX + 0x38]
MOV dword ptr [EAX + ESI*0x4],0x2
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x84]
MOV dword ptr [EAX + ESI*0x8],0xffffffff
MOV dword ptr [EAX + ESI*0x8 + 0x4],0xffffffff
JMP 0x000a23a1
MOV EAX,dword ptr [EDI + 0x30]
MOV dword ptr [ESI],EAX
MOV ECX,dword ptr [EDI + 0x28]
MOV dword ptr [EDI + 0x30],ESI
MOV EAX,dword ptr [ESI]
TEST EAX,EAX
JZ 0x000a3fa4
MOV EAX,dword ptr [EAX + 0xc]
XOR EDX,EDX
DIV dword ptr [EDI + 0x2c]
MOV dword ptr [ECX + EDX*0x4],ESI
LEA EAX,[EDI + 0x30]
MOV dword ptr [ECX + EBX*0x1],EAX
JMP 0x000a3331
MOV EAX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EAX + 0x124]
MOV EDI,dword ptr [EAX + 0x120]
CMP ESI,EDI
JZ 0x000a3ff3
LEA ESI,[ESI]
MOV EAX,dword ptr [EDI]
LEA EDX,[EDI + 0x8]
CMP EAX,EDX
JZ 0x000a3fe3
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
ADD EDI,0x64
CMP ESI,EDI
JNZ 0x000a3fc8
MOV EAX,dword ptr [EBP + 0x8]
MOV EDI,dword ptr [EAX + 0x120]
TEST EDI,EDI
JZ 0x000a4009
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EDI
CALL 0x001807a0
ADD ESP,0x10
MOV EDX,dword ptr [EBP + 0xfffffed8]
MOV EAX,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [EBP + 0x8]
MOV dword ptr [EAX + 0x120],EDX
MOV EAX,dword ptr [EBP + 0xfffffee0]
ADD EAX,EDX
MOV dword ptr [EBX + 0x124],EAX
MOV EAX,dword ptr [EBP + 0xfffffec4]
ADD EAX,EDX
MOV dword ptr [EBX + 0x128],EAX
JMP 0x000a20e7
MOV EAX,dword ptr [EBP + 0xfffffec8]
MOV EAX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x8]
TEST EAX,EAX
JZ 0x000a448d
CMP byte ptr [EAX + 0x2ed1],0x0
MOV ESI,dword ptr [EBP + 0xffffff14]
JZ 0x000a2c3a
MOV EDX,dword ptr [EBP + 0xc]
LEA EAX,[EBP + 0xfffffee8]
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH ESI
PUSH dword ptr [EBP + 0x8]
PUSH dword ptr [EDX + 0x15c]
PUSH EAX
CALL 0x000625c0
MOV EAX,dword ptr [EBP + 0xfffffee8]
LEA EDX,[EBP + -0x80]
POP EBX
MOV EDI,EDX
POP ESI
MOV EDX,dword ptr [EAX]
MOV ESI,dword ptr [EAX + 0x4]
PUSH dword ptr [EBP + 0xfffffeec]
PUSH EAX
PUSH EDI
CALL dword ptr [EDX + 0x40]
MOV EAX,dword ptr [EBP + 0x8]
MOV ECX,dword ptr [EBP + 0xfffffee4]
ADD ESP,0xc
MOV EDI,dword ptr [EBP + -0x80]
MOV EDX,dword ptr [EBP + 0xffffff14]
MOV EAX,dword ptr [EAX + 0x4]
LEA ECX,[ECX + 0xffd9a620]
MOV dword ptr [EBP + 0xfffffed8],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX]
MOV EAX,dword ptr [EAX + 0x40]
CMP EAX,ECX
JNZ 0x000a42a7
MOV ECX,dword ptr [EBP + 0x8]
SUB ESP,0x4
LEA EAX,[EBP + 0xffffff68]
PUSH EDX
LEA EDX,[ECX + 0x90]
PUSH EDX
PUSH EAX
CALL 0x0004e830
MOV ECX,dword ptr [EBP + 0xffffff68]
MOV EAX,dword ptr [EBP + 0xfffffe64]
ADD ESP,0xc
SUB ESP,0xc
MOV dword ptr [EBP + 0xfffffeb0],ECX
MOV ECX,dword ptr [EBP + 0xfffffee4]
MOV EDX,dword ptr [EAX]
LEA EAX,[ECX + 0xfff22e4c]
MOV EBX,ECX
PUSH EAX
MOV dword ptr [EBP + 0xfffffee0],EDX
CALL 0x000263b0
POP EDX
MOV EDX,dword ptr [EBP + 0xfffffee0]
POP ECX
MOV ECX,dword ptr [EBP + 0xfffffeb0]
PUSH ESI
PUSH EDI
MOV EDI,dword ptr [EBP + 0xfffffee4]
PUSH dword ptr [EBP + 0xfffffed8]
PUSH ECX
MOV EBX,EDI
PUSH EDX
PUSH EAX
CALL 0x0005ad60
MOV EAX,dword ptr [EBP + 0xffffff68]
LEA EDX,[EBP + 0xffffff70]
ADD ESP,0x20
CMP EAX,EDX
JZ 0x000a4165
SUB ESP,0xc
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + -0x80]
LEA EDX,[EBP + -0x78]
CMP EAX,EDX
JZ 0x000a4181
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
CALL 0x001807a0
ADD ESP,0x10
MOV ESI,dword ptr [EBP + 0xffffff14]
JMP 0x000a2c3a
MOV dword ptr [EBP + 0xfffffec4],0x0
JMP 0x000a2028
MOV ECX,dword ptr [EBP + 0xfffffed4]
SUB ESP,0x8
SUB ECX,EAX
MOV EAX,dword ptr [EBP + 0x8]
PUSH ECX
ADD EAX,0x84
PUSH EAX
CALL 0x0004dfd0
ADD ESP,0x10
JMP 0x000a2035
MOV EAX,dword ptr [EBP + 0x8]
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
MOV ESI,dword ptr [EAX + 0x28]
PUSH 0xc
CALL 0x0017ebf0
MOV EDI,EAX
ADD ESP,0x10
MOV dword ptr [EAX],0x0
MOV dword ptr [EAX + 0x4],0x0
MOV dword ptr [EAX + 0x8],0x0
TEST ESI,ESI
JZ 0x000a428f
CMP ESI,0x3fffffff
JA 0x000a4525
SHL ESI,0x2
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH ESI
CALL 0x0017ebf0
ADD ESI,EAX
MOV dword ptr [EDI],EAX
ADD ESP,0x10
MOV dword ptr [EDI + 0x8],ESI
LEA ESI,[ESI]
MOV dword ptr [EAX],0x0
ADD EAX,0x4
CMP ESI,EAX
JNZ 0x000a4220
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EDI + 0x4],ESI
MOV dword ptr [EAX + 0x44],EDI
JMP 0x000a27b0
SUB ESP,0x4
LEA ECX,[EBP + 0xffffff18]
ADD EDX,0x1c
PUSH ECX
PUSH EAX
PUSH EDX
CALL 0x00097230
ADD ESP,0x10
JMP 0x000a20ab
SUB ESP,0x4
LEA EDX,[EBP + 0xffffff14]
PUSH EDX
PUSH EAX
LEA EAX,[EBP + 0xffffff30]
PUSH EAX
CALL 0x00047200
JMP 0x000a3e57
SUB ESP,0x4
LEA EDX,[EBP + 0xffffff14]
PUSH EDX
PUSH EAX
LEA EAX,[EBP + 0xffffff3c]
PUSH EAX
CALL 0x00047200
JMP 0x000a3e57
XOR ESI,ESI
JMP 0x000a422d
SUB ESP,0x4
PUSH ESI
PUSH dword ptr [EBP + 0x8]
PUSH dword ptr [EBP + 0xfffffe8c]
CALL EAX
JMP 0x000a3909
SUB ESP,0x4
LEA ECX,[EBP + 0xffffff68]
PUSH EDX
PUSH dword ptr [EBP + 0x8]
PUSH ECX
CALL EAX
JMP 0x000a40ec
SUB ESP,0x4
LEA EDX,[EBP + 0xffffff14]
PUSH EDX
PUSH EAX
LEA EAX,[EBP + 0xffffff48]
PUSH EAX
CALL 0x00047200
JMP 0x000a3e57
MOV EBX,dword ptr [EBP + 0xfffffee4]
SUB ESP,0x4
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
SUB ESP,0x4
LEA EAX,[EBX + 0xfff238c4]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x69
PUSH EAX
CALL 0x0005f0b0
PUSH EBX
MOV EBX,dword ptr [EBP + 0xfffffee4]
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
SUB ESP,0xc
LEA EAX,[EBX + 0xfff18583]
PUSH EAX
CALL 0x001c6190
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH ECX
LEA EAX,[EBX + 0xfff23134]
PUSH EAX
LEA EAX,[EBX + 0xfff228b8]
PUSH 0x59d
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
CALL 0x001c5fe0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff238c4]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x69
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EAX
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EDI
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
PUSH EBX
MOV EBX,dword ptr [EBP + 0xfffffee4]
LEA EAX,[EBX + 0xfff23134]
PUSH EAX
LEA EAX,[EBX + 0xfff228b8]
PUSH 0x597
PUSH EAX
CALL 0x0005f0b0
MOV byte ptr [EBP + 0xfffffecc],0x1
MOV byte ptr [EBP + 0xfffffecf],0x0
MOV byte ptr [EBP + 0xfffffece],0x1
JMP 0x000a1e71
CALL 0x000917c0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH EDI
LEA EAX,[EBX + 0xfff238fc]
PUSH EAX
LEA EAX,[EBX + 0xfff1e970]
PUSH 0x5c
PUSH EAX
CALL 0x0005f0b0
PUSH EBX
MOV EBX,dword ptr [EBP + 0xfffffee4]
LEA EAX,[EBX + 0xfff235a8]
PUSH EAX
LEA EAX,[EBX + 0xfff1801a]
PUSH 0x541
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH ESI
LEA EAX,[EBX + 0xfff23134]
PUSH EAX
LEA EAX,[EBX + 0xfff228b8]
PUSH 0x751
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH ECX
LEA EAX,[EBX + 0xfff23134]
PUSH EAX
LEA EAX,[EBX + 0xfff228b8]
PUSH 0x7a0
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
PUSH ECX
LEA EAX,[EBX + 0xfff23134]
PUSH EAX
LEA EAX,[EBX + 0xfff228b8]
PUSH 0x76c
PUSH EAX
CALL 0x0005f0b0
MOV EBX,dword ptr [EBP + 0xfffffee4]
CALL 0x001c5fe0
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */\n/* WARNING: Type propagation algorithm not settling */\n\nvoid FUN_000a1d70(uint *******param_1,int param_2,int param_3,int *param_4)\n\n{\n  uint ******ppppppuVar1;\n  uint *puVar2;\n  byte bVar3;\n  uint ***pppuVar4;\n  int iVar5;\n  code *pcVar6;\n  char cVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  uint ******ppppppuVar13;\n  uint ****ppppuVar14;\n  uint *****pppppuVar15;\n  undefined *puVar16;\n  uint ******ppppppuVar17;\n  uint *****pppppuVar18;\n  uint *******extraout_ECX;\n  int iVar19;\n  uint *******extraout_ECX_00;\n  uint ******ppppppuVar20;\n  uint *******extraout_ECX_01;\n  uint *******extraout_ECX_02;\n  uint *******extraout_ECX_03;\n  uint *******extraout_ECX_04;\n  uint *******extraout_ECX_05;\n  uint *******extraout_ECX_06;\n  uint *******extraout_ECX_07;\n  uint *******extraout_ECX_08;\n  uint *******extraout_ECX_09;\n  uint *******extraout_ECX_10;\n  uint *******extraout_ECX_11;\n  uint *******extraout_ECX_12;\n  uint *******extraout_ECX_13;\n  uint *******extraout_ECX_14;\n  uint *******extraout_ECX_15;\n  uint *******extraout_ECX_16;\n  uint *******extraout_ECX_17;\n  uint *******extraout_ECX_18;\n  uint *******extraout_ECX_19;\n  uint *******extraout_ECX_20;\n  uint *******extraout_ECX_21;\n  uint *******extraout_ECX_22;\n  uint *******extraout_ECX_23;\n  uint *******extraout_ECX_24;\n  uint *******extraout_ECX_25;\n  uint *******extraout_ECX_26;\n  uint *******extraout_ECX_27;\n  uint *******extraout_ECX_28;\n  uint *******extraout_ECX_29;\n  uint *******extraout_ECX_30;\n  uint *******extraout_ECX_31;\n  uint ******ppppppuVar21;\n  uint *******pppppppuVar22;\n  undefined1 *puVar23;\n  undefined1 *puVar24;\n  undefined1 *puVar26;\n  uint *******pppppppuVar27;\n  uint *******pppppppuVar28;\n  uint *******pppppppuVar29;\n  byte *pbVar30;\n  byte *pbVar31;\n  uint *******pppppppuVar32;\n  bool bVar33;\n  bool bVar34;\n  bool bVar35;\n  byte bVar36;\n  undefined1 auStack_1ac [8];\n  uint *******local_1a4;\n  uint *******local_1a0;\n  int local_19c;\n  uint *******local_198;\n  uint *******local_194;\n  uint *******local_190;\n  uint *******local_18c;\n  uint ******local_188;\n  uint *******local_184;\n  uint ******local_180;\n  uint *******local_17c;\n  uint *******local_178;\n  uint *******local_174;\n  uint *******local_170;\n  uint *******local_16c;\n  uint local_168;\n  uint ******local_164;\n  uint ******local_160;\n  undefined4 *local_15c;\n  undefined4 *local_158;\n  uint *******local_154;\n  uint ******local_150;\n  int local_14c;\n  uint ******local_148;\n  uint ******local_144;\n  uint *******local_140;\n  uint *******local_13c;\n  char local_138;\n  byte local_137;\n  byte local_136;\n  char local_135;\n  uint *******local_134;\n  uint *******local_130;\n  uint *******local_12c;\n  undefined4 local_128;\n  uint *******local_124;\n  uint *******local_120;\n  int *local_11c;\n  undefined4 local_118;\n  int local_110;\n  char local_10c [4];\n  undefined4 local_108;\n  uint *******local_100 [3];\n  undefined1 local_f1;\n  uint *******local_f0;\n  uint *******local_ec;\n  uint *******local_e8;\n  uint ******local_e4;\n  uint *******local_e0;\n  uint *******local_dc;\n  uint *******local_d8;\n  int *local_d4;\n  int *local_d0;\n  int *local_cc;\n  int *local_c8;\n  int *local_c4;\n  int *local_c0;\n  int *local_bc;\n  int *local_b8;\n  int *local_b4;\n  void *local_b0;\n  undefined4 local_ac;\n  void *local_a8;\n  uint local_a4;\n  byte *local_a0;\n  uint *******local_9c;\n  uint *******local_98;\n  uint ******local_94 [4];\n  uint *******local_84;\n  uint *******local_80;\n  uint ******local_7c [4];\n  uint *******local_6c;\n  undefined4 local_68;\n  uint *******local_64;\n  uint ******local_60;\n  uint *******local_5c;\n  uint ******local_58;\n  uint ******local_54;\n  uint ******local_50;\n  uint ******local_4c;\n  uint ******local_48;\n  uint ******local_44;\n  uint ******local_40;\n  uint ******local_3c;\n  uint ******local_38;\n  uint ******local_34;\n  uint ******local_30;\n  uint ******local_2c;\n  uint ******local_28;\n  uint ******local_24;\n  undefined1 *puVar25;\n  \n  bVar36 = 0;\n  local_120 = (uint *******)&__DT_PLTGOT;\n  local_13c = (uint *******)&DAT_00302378;\n  if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }\n  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);\n  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);\n  local_130 = (uint *******)param_1[10];\n  pppppppuVar22 = (uint *******)&DAT_00302378;\n  pppppppuVar29 = (uint *******)&__DT_PLTGOT;\n  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;\n  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }\nLAB_000a1e71:\n  pppppppuVar29 = local_124;\n  pppppppuVar22 = local_130;\n  ppppuVar14 = pppppuVar15[0x164f];\n  local_124 = (uint *******)((uint)local_124 & 0xffffff00);\n  if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }\n  if ((uint *******)0x3fffffff < local_130) {\n                    /* WARNING: Subroutine does not return */\n    FUN_001c5fe0();\n  }\n  local_14c = (int)local_130 * 4;\n  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);\n  iVar19 = local_14c;\n  puVar8 = local_158;\n  if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }\n                    /* try { // try from 000a1efd to 000a1f01 has its CatchHandler @ 000a4675 */\n  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);\n  puVar24 = auStack_1ac;\n  puVar26 = auStack_1ac;\n  pppppppuVar22 = (uint *******)(local_160 + 0x10);\n  puVar8 = local_15c;\n  local_134 = pppppppuVar22;\n  if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }\n  local_140 = (uint *******)0x0;\nLAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }\n  if (param_1[7] == (uint ******)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */\n    FUN_000917c0();\n  }\n                    /* try { // try from 000a204d to 000a2051 has its CatchHandler @ 000a46c7 */\n  local_137 = FUN_0005cf90(param_1[7]);\n  if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */\n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }\n  *(undefined4 **)(puVar24 + -0x10) = local_15c;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;\n  FUN_001807a0();\n  *(undefined4 **)(puVar24 + -0x10) = local_158;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;\n  FUN_001807a0();\n  return;\n}\n\n" comment comment (function_definition "void FUN_000a1d70(uint *******param_1,int param_2,int param_3,int *param_4)\n\n{\n  uint ******ppppppuVar1;\n  uint *puVar2;\n  byte bVar3;\n  uint ***pppuVar4;\n  int iVar5;\n  code *pcVar6;\n  char cVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  uint ******ppppppuVar13;\n  uint ****ppppuVar14;\n  uint *****pppppuVar15;\n  undefined *puVar16;\n  uint ******ppppppuVar17;\n  uint *****pppppuVar18;\n  uint *******extraout_ECX;\n  int iVar19;\n  uint *******extraout_ECX_00;\n  uint ******ppppppuVar20;\n  uint *******extraout_ECX_01;\n  uint *******extraout_ECX_02;\n  uint *******extraout_ECX_03;\n  uint *******extraout_ECX_04;\n  uint *******extraout_ECX_05;\n  uint *******extraout_ECX_06;\n  uint *******extraout_ECX_07;\n  uint *******extraout_ECX_08;\n  uint *******extraout_ECX_09;\n  uint *******extraout_ECX_10;\n  uint *******extraout_ECX_11;\n  uint *******extraout_ECX_12;\n  uint *******extraout_ECX_13;\n  uint *******extraout_ECX_14;\n  uint *******extraout_ECX_15;\n  uint *******extraout_ECX_16;\n  uint *******extraout_ECX_17;\n  uint *******extraout_ECX_18;\n  uint *******extraout_ECX_19;\n  uint *******extraout_ECX_20;\n  uint *******extraout_ECX_21;\n  uint *******extraout_ECX_22;\n  uint *******extraout_ECX_23;\n  uint *******extraout_ECX_24;\n  uint *******extraout_ECX_25;\n  uint *******extraout_ECX_26;\n  uint *******extraout_ECX_27;\n  uint *******extraout_ECX_28;\n  uint *******extraout_ECX_29;\n  uint *******extraout_ECX_30;\n  uint *******extraout_ECX_31;\n  uint ******ppppppuVar21;\n  uint *******pppppppuVar22;\n  undefined1 *puVar23;\n  undefined1 *puVar24;\n  undefined1 *puVar26;\n  uint *******pppppppuVar27;\n  uint *******pppppppuVar28;\n  uint *******pppppppuVar29;\n  byte *pbVar30;\n  byte *pbVar31;\n  uint *******pppppppuVar32;\n  bool bVar33;\n  bool bVar34;\n  bool bVar35;\n  byte bVar36;\n  undefined1 auStack_1ac [8];\n  uint *******local_1a4;\n  uint *******local_1a0;\n  int local_19c;\n  uint *******local_198;\n  uint *******local_194;\n  uint *******local_190;\n  uint *******local_18c;\n  uint ******local_188;\n  uint *******local_184;\n  uint ******local_180;\n  uint *******local_17c;\n  uint *******local_178;\n  uint *******local_174;\n  uint *******local_170;\n  uint *******local_16c;\n  uint local_168;\n  uint ******local_164;\n  uint ******local_160;\n  undefined4 *local_15c;\n  undefined4 *local_158;\n  uint *******local_154;\n  uint ******local_150;\n  int local_14c;\n  uint ******local_148;\n  uint ******local_144;\n  uint *******local_140;\n  uint *******local_13c;\n  char local_138;\n  byte local_137;\n  byte local_136;\n  char local_135;\n  uint *******local_134;\n  uint *******local_130;\n  uint *******local_12c;\n  undefined4 local_128;\n  uint *******local_124;\n  uint *******local_120;\n  int *local_11c;\n  undefined4 local_118;\n  int local_110;\n  char local_10c [4];\n  undefined4 local_108;\n  uint *******local_100 [3];\n  undefined1 local_f1;\n  uint *******local_f0;\n  uint *******local_ec;\n  uint *******local_e8;\n  uint ******local_e4;\n  uint *******local_e0;\n  uint *******local_dc;\n  uint *******local_d8;\n  int *local_d4;\n  int *local_d0;\n  int *local_cc;\n  int *local_c8;\n  int *local_c4;\n  int *local_c0;\n  int *local_bc;\n  int *local_b8;\n  int *local_b4;\n  void *local_b0;\n  undefined4 local_ac;\n  void *local_a8;\n  uint local_a4;\n  byte *local_a0;\n  uint *******local_9c;\n  uint *******local_98;\n  uint ******local_94 [4];\n  uint *******local_84;\n  uint *******local_80;\n  uint ******local_7c [4];\n  uint *******local_6c;\n  undefined4 local_68;\n  uint *******local_64;\n  uint ******local_60;\n  uint *******local_5c;\n  uint ******local_58;\n  uint ******local_54;\n  uint ******local_50;\n  uint ******local_4c;\n  uint ******local_48;\n  uint ******local_44;\n  uint ******local_40;\n  uint ******local_3c;\n  uint ******local_38;\n  uint ******local_34;\n  uint ******local_30;\n  uint ******local_2c;\n  uint ******local_28;\n  uint ******local_24;\n  undefined1 *puVar25;\n  \n  bVar36 = 0;\n  local_120 = (uint *******)&__DT_PLTGOT;\n  local_13c = (uint *******)&DAT_00302378;\n  if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }\n  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);\n  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);\n  local_130 = (uint *******)param_1[10];\n  pppppppuVar22 = (uint *******)&DAT_00302378;\n  pppppppuVar29 = (uint *******)&__DT_PLTGOT;\n  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;\n  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }\nLAB_000a1e71:\n  pppppppuVar29 = local_124;\n  pppppppuVar22 = local_130;\n  ppppuVar14 = pppppuVar15[0x164f];\n  local_124 = (uint *******)((uint)local_124 & 0xffffff00);\n  if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }\n  if ((uint *******)0x3fffffff < local_130) {\n                    /* WARNING: Subroutine does not return */\n    FUN_001c5fe0();\n  }\n  local_14c = (int)local_130 * 4;\n  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);\n  iVar19 = local_14c;\n  puVar8 = local_158;\n  if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }\n                    /* try { // try from 000a1efd to 000a1f01 has its CatchHandler @ 000a4675 */\n  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);\n  puVar24 = auStack_1ac;\n  puVar26 = auStack_1ac;\n  pppppppuVar22 = (uint *******)(local_160 + 0x10);\n  puVar8 = local_15c;\n  local_134 = pppppppuVar22;\n  if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }\n  local_140 = (uint *******)0x0;\nLAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }\n  if (param_1[7] == (uint ******)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */\n    FUN_000917c0();\n  }\n                    /* try { // try from 000a204d to 000a2051 has its CatchHandler @ 000a46c7 */\n  local_137 = FUN_0005cf90(param_1[7]);\n  if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */\n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }\n  *(undefined4 **)(puVar24 + -0x10) = local_15c;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;\n  FUN_001807a0();\n  *(undefined4 **)(puVar24 + -0x10) = local_158;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;\n  FUN_001807a0();\n  return;\n}" primitive_type (function_declarator "FUN_000a1d70(uint *******param_1,int param_2,int param_3,int *param_4)" identifier (parameter_list "(uint *******param_1,int param_2,int param_3,int *param_4)" ( (parameter_declaration "uint *******param_1" type_identifier (pointer_declarator "*******param_1" * (pointer_declarator "******param_1" * (pointer_declarator "*****param_1" * (pointer_declarator "****param_1" * (pointer_declarator "***param_1" * (pointer_declarator "**param_1" * (pointer_declarator "*param_1" * identifier)))))))) , (parameter_declaration "int param_2" primitive_type identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "int *param_4" primitive_type (pointer_declarator "*param_4" * identifier)) ))) (compound_statement "{\n  uint ******ppppppuVar1;\n  uint *puVar2;\n  byte bVar3;\n  uint ***pppuVar4;\n  int iVar5;\n  code *pcVar6;\n  char cVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  uint ******ppppppuVar13;\n  uint ****ppppuVar14;\n  uint *****pppppuVar15;\n  undefined *puVar16;\n  uint ******ppppppuVar17;\n  uint *****pppppuVar18;\n  uint *******extraout_ECX;\n  int iVar19;\n  uint *******extraout_ECX_00;\n  uint ******ppppppuVar20;\n  uint *******extraout_ECX_01;\n  uint *******extraout_ECX_02;\n  uint *******extraout_ECX_03;\n  uint *******extraout_ECX_04;\n  uint *******extraout_ECX_05;\n  uint *******extraout_ECX_06;\n  uint *******extraout_ECX_07;\n  uint *******extraout_ECX_08;\n  uint *******extraout_ECX_09;\n  uint *******extraout_ECX_10;\n  uint *******extraout_ECX_11;\n  uint *******extraout_ECX_12;\n  uint *******extraout_ECX_13;\n  uint *******extraout_ECX_14;\n  uint *******extraout_ECX_15;\n  uint *******extraout_ECX_16;\n  uint *******extraout_ECX_17;\n  uint *******extraout_ECX_18;\n  uint *******extraout_ECX_19;\n  uint *******extraout_ECX_20;\n  uint *******extraout_ECX_21;\n  uint *******extraout_ECX_22;\n  uint *******extraout_ECX_23;\n  uint *******extraout_ECX_24;\n  uint *******extraout_ECX_25;\n  uint *******extraout_ECX_26;\n  uint *******extraout_ECX_27;\n  uint *******extraout_ECX_28;\n  uint *******extraout_ECX_29;\n  uint *******extraout_ECX_30;\n  uint *******extraout_ECX_31;\n  uint ******ppppppuVar21;\n  uint *******pppppppuVar22;\n  undefined1 *puVar23;\n  undefined1 *puVar24;\n  undefined1 *puVar26;\n  uint *******pppppppuVar27;\n  uint *******pppppppuVar28;\n  uint *******pppppppuVar29;\n  byte *pbVar30;\n  byte *pbVar31;\n  uint *******pppppppuVar32;\n  bool bVar33;\n  bool bVar34;\n  bool bVar35;\n  byte bVar36;\n  undefined1 auStack_1ac [8];\n  uint *******local_1a4;\n  uint *******local_1a0;\n  int local_19c;\n  uint *******local_198;\n  uint *******local_194;\n  uint *******local_190;\n  uint *******local_18c;\n  uint ******local_188;\n  uint *******local_184;\n  uint ******local_180;\n  uint *******local_17c;\n  uint *******local_178;\n  uint *******local_174;\n  uint *******local_170;\n  uint *******local_16c;\n  uint local_168;\n  uint ******local_164;\n  uint ******local_160;\n  undefined4 *local_15c;\n  undefined4 *local_158;\n  uint *******local_154;\n  uint ******local_150;\n  int local_14c;\n  uint ******local_148;\n  uint ******local_144;\n  uint *******local_140;\n  uint *******local_13c;\n  char local_138;\n  byte local_137;\n  byte local_136;\n  char local_135;\n  uint *******local_134;\n  uint *******local_130;\n  uint *******local_12c;\n  undefined4 local_128;\n  uint *******local_124;\n  uint *******local_120;\n  int *local_11c;\n  undefined4 local_118;\n  int local_110;\n  char local_10c [4];\n  undefined4 local_108;\n  uint *******local_100 [3];\n  undefined1 local_f1;\n  uint *******local_f0;\n  uint *******local_ec;\n  uint *******local_e8;\n  uint ******local_e4;\n  uint *******local_e0;\n  uint *******local_dc;\n  uint *******local_d8;\n  int *local_d4;\n  int *local_d0;\n  int *local_cc;\n  int *local_c8;\n  int *local_c4;\n  int *local_c0;\n  int *local_bc;\n  int *local_b8;\n  int *local_b4;\n  void *local_b0;\n  undefined4 local_ac;\n  void *local_a8;\n  uint local_a4;\n  byte *local_a0;\n  uint *******local_9c;\n  uint *******local_98;\n  uint ******local_94 [4];\n  uint *******local_84;\n  uint *******local_80;\n  uint ******local_7c [4];\n  uint *******local_6c;\n  undefined4 local_68;\n  uint *******local_64;\n  uint ******local_60;\n  uint *******local_5c;\n  uint ******local_58;\n  uint ******local_54;\n  uint ******local_50;\n  uint ******local_4c;\n  uint ******local_48;\n  uint ******local_44;\n  uint ******local_40;\n  uint ******local_3c;\n  uint ******local_38;\n  uint ******local_34;\n  uint ******local_30;\n  uint ******local_2c;\n  uint ******local_28;\n  uint ******local_24;\n  undefined1 *puVar25;\n  \n  bVar36 = 0;\n  local_120 = (uint *******)&__DT_PLTGOT;\n  local_13c = (uint *******)&DAT_00302378;\n  if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }\n  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);\n  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);\n  local_130 = (uint *******)param_1[10];\n  pppppppuVar22 = (uint *******)&DAT_00302378;\n  pppppppuVar29 = (uint *******)&__DT_PLTGOT;\n  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;\n  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }\nLAB_000a1e71:\n  pppppppuVar29 = local_124;\n  pppppppuVar22 = local_130;\n  ppppuVar14 = pppppuVar15[0x164f];\n  local_124 = (uint *******)((uint)local_124 & 0xffffff00);\n  if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }\n  if ((uint *******)0x3fffffff < local_130) {\n                    /* WARNING: Subroutine does not return */\n    FUN_001c5fe0();\n  }\n  local_14c = (int)local_130 * 4;\n  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);\n  iVar19 = local_14c;\n  puVar8 = local_158;\n  if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }\n                    /* try { // try from 000a1efd to 000a1f01 has its CatchHandler @ 000a4675 */\n  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);\n  puVar24 = auStack_1ac;\n  puVar26 = auStack_1ac;\n  pppppppuVar22 = (uint *******)(local_160 + 0x10);\n  puVar8 = local_15c;\n  local_134 = pppppppuVar22;\n  if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }\n  local_140 = (uint *******)0x0;\nLAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }\n  if (param_1[7] == (uint ******)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */\n    FUN_000917c0();\n  }\n                    /* try { // try from 000a204d to 000a2051 has its CatchHandler @ 000a46c7 */\n  local_137 = FUN_0005cf90(param_1[7]);\n  if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */\n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }\n  *(undefined4 **)(puVar24 + -0x10) = local_15c;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;\n  FUN_001807a0();\n  *(undefined4 **)(puVar24 + -0x10) = local_158;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;\n  FUN_001807a0();\n  return;\n}" { (declaration "uint ******ppppppuVar1;" type_identifier (pointer_declarator "******ppppppuVar1" * (pointer_declarator "*****ppppppuVar1" * (pointer_declarator "****ppppppuVar1" * (pointer_declarator "***ppppppuVar1" * (pointer_declarator "**ppppppuVar1" * (pointer_declarator "*ppppppuVar1" * identifier)))))) ;) (declaration "uint *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "uint ***pppuVar4;" type_identifier (pointer_declarator "***pppuVar4" * (pointer_declarator "**pppuVar4" * (pointer_declarator "*pppuVar4" * identifier))) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "code *pcVar6;" type_identifier (pointer_declarator "*pcVar6" * identifier) ;) (declaration "char cVar7;" primitive_type identifier ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "size_t sVar9;" primitive_type identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "uint ******ppppppuVar13;" type_identifier (pointer_declarator "******ppppppuVar13" * (pointer_declarator "*****ppppppuVar13" * (pointer_declarator "****ppppppuVar13" * (pointer_declarator "***ppppppuVar13" * (pointer_declarator "**ppppppuVar13" * (pointer_declarator "*ppppppuVar13" * identifier)))))) ;) (declaration "uint ****ppppuVar14;" type_identifier (pointer_declarator "****ppppuVar14" * (pointer_declarator "***ppppuVar14" * (pointer_declarator "**ppppuVar14" * (pointer_declarator "*ppppuVar14" * identifier)))) ;) (declaration "uint *****pppppuVar15;" type_identifier (pointer_declarator "*****pppppuVar15" * (pointer_declarator "****pppppuVar15" * (pointer_declarator "***pppppuVar15" * (pointer_declarator "**pppppuVar15" * (pointer_declarator "*pppppuVar15" * identifier))))) ;) (declaration "undefined *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "uint ******ppppppuVar17;" type_identifier (pointer_declarator "******ppppppuVar17" * (pointer_declarator "*****ppppppuVar17" * (pointer_declarator "****ppppppuVar17" * (pointer_declarator "***ppppppuVar17" * (pointer_declarator "**ppppppuVar17" * (pointer_declarator "*ppppppuVar17" * identifier)))))) ;) (declaration "uint *****pppppuVar18;" type_identifier (pointer_declarator "*****pppppuVar18" * (pointer_declarator "****pppppuVar18" * (pointer_declarator "***pppppuVar18" * (pointer_declarator "**pppppuVar18" * (pointer_declarator "*pppppuVar18" * identifier))))) ;) (declaration "uint *******extraout_ECX;" type_identifier (pointer_declarator "*******extraout_ECX" * (pointer_declarator "******extraout_ECX" * (pointer_declarator "*****extraout_ECX" * (pointer_declarator "****extraout_ECX" * (pointer_declarator "***extraout_ECX" * (pointer_declarator "**extraout_ECX" * (pointer_declarator "*extraout_ECX" * identifier))))))) ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "uint *******extraout_ECX_00;" type_identifier (pointer_declarator "*******extraout_ECX_00" * (pointer_declarator "******extraout_ECX_00" * (pointer_declarator "*****extraout_ECX_00" * (pointer_declarator "****extraout_ECX_00" * (pointer_declarator "***extraout_ECX_00" * (pointer_declarator "**extraout_ECX_00" * (pointer_declarator "*extraout_ECX_00" * identifier))))))) ;) (declaration "uint ******ppppppuVar20;" type_identifier (pointer_declarator "******ppppppuVar20" * (pointer_declarator "*****ppppppuVar20" * (pointer_declarator "****ppppppuVar20" * (pointer_declarator "***ppppppuVar20" * (pointer_declarator "**ppppppuVar20" * (pointer_declarator "*ppppppuVar20" * identifier)))))) ;) (declaration "uint *******extraout_ECX_01;" type_identifier (pointer_declarator "*******extraout_ECX_01" * (pointer_declarator "******extraout_ECX_01" * (pointer_declarator "*****extraout_ECX_01" * (pointer_declarator "****extraout_ECX_01" * (pointer_declarator "***extraout_ECX_01" * (pointer_declarator "**extraout_ECX_01" * (pointer_declarator "*extraout_ECX_01" * identifier))))))) ;) (declaration "uint *******extraout_ECX_02;" type_identifier (pointer_declarator "*******extraout_ECX_02" * (pointer_declarator "******extraout_ECX_02" * (pointer_declarator "*****extraout_ECX_02" * (pointer_declarator "****extraout_ECX_02" * (pointer_declarator "***extraout_ECX_02" * (pointer_declarator "**extraout_ECX_02" * (pointer_declarator "*extraout_ECX_02" * identifier))))))) ;) (declaration "uint *******extraout_ECX_03;" type_identifier (pointer_declarator "*******extraout_ECX_03" * (pointer_declarator "******extraout_ECX_03" * (pointer_declarator "*****extraout_ECX_03" * (pointer_declarator "****extraout_ECX_03" * (pointer_declarator "***extraout_ECX_03" * (pointer_declarator "**extraout_ECX_03" * (pointer_declarator "*extraout_ECX_03" * identifier))))))) ;) (declaration "uint *******extraout_ECX_04;" type_identifier (pointer_declarator "*******extraout_ECX_04" * (pointer_declarator "******extraout_ECX_04" * (pointer_declarator "*****extraout_ECX_04" * (pointer_declarator "****extraout_ECX_04" * (pointer_declarator "***extraout_ECX_04" * (pointer_declarator "**extraout_ECX_04" * (pointer_declarator "*extraout_ECX_04" * identifier))))))) ;) (declaration "uint *******extraout_ECX_05;" type_identifier (pointer_declarator "*******extraout_ECX_05" * (pointer_declarator "******extraout_ECX_05" * (pointer_declarator "*****extraout_ECX_05" * (pointer_declarator "****extraout_ECX_05" * (pointer_declarator "***extraout_ECX_05" * (pointer_declarator "**extraout_ECX_05" * (pointer_declarator "*extraout_ECX_05" * identifier))))))) ;) (declaration "uint *******extraout_ECX_06;" type_identifier (pointer_declarator "*******extraout_ECX_06" * (pointer_declarator "******extraout_ECX_06" * (pointer_declarator "*****extraout_ECX_06" * (pointer_declarator "****extraout_ECX_06" * (pointer_declarator "***extraout_ECX_06" * (pointer_declarator "**extraout_ECX_06" * (pointer_declarator "*extraout_ECX_06" * identifier))))))) ;) (declaration "uint *******extraout_ECX_07;" type_identifier (pointer_declarator "*******extraout_ECX_07" * (pointer_declarator "******extraout_ECX_07" * (pointer_declarator "*****extraout_ECX_07" * (pointer_declarator "****extraout_ECX_07" * (pointer_declarator "***extraout_ECX_07" * (pointer_declarator "**extraout_ECX_07" * (pointer_declarator "*extraout_ECX_07" * identifier))))))) ;) (declaration "uint *******extraout_ECX_08;" type_identifier (pointer_declarator "*******extraout_ECX_08" * (pointer_declarator "******extraout_ECX_08" * (pointer_declarator "*****extraout_ECX_08" * (pointer_declarator "****extraout_ECX_08" * (pointer_declarator "***extraout_ECX_08" * (pointer_declarator "**extraout_ECX_08" * (pointer_declarator "*extraout_ECX_08" * identifier))))))) ;) (declaration "uint *******extraout_ECX_09;" type_identifier (pointer_declarator "*******extraout_ECX_09" * (pointer_declarator "******extraout_ECX_09" * (pointer_declarator "*****extraout_ECX_09" * (pointer_declarator "****extraout_ECX_09" * (pointer_declarator "***extraout_ECX_09" * (pointer_declarator "**extraout_ECX_09" * (pointer_declarator "*extraout_ECX_09" * identifier))))))) ;) (declaration "uint *******extraout_ECX_10;" type_identifier (pointer_declarator "*******extraout_ECX_10" * (pointer_declarator "******extraout_ECX_10" * (pointer_declarator "*****extraout_ECX_10" * (pointer_declarator "****extraout_ECX_10" * (pointer_declarator "***extraout_ECX_10" * (pointer_declarator "**extraout_ECX_10" * (pointer_declarator "*extraout_ECX_10" * identifier))))))) ;) (declaration "uint *******extraout_ECX_11;" type_identifier (pointer_declarator "*******extraout_ECX_11" * (pointer_declarator "******extraout_ECX_11" * (pointer_declarator "*****extraout_ECX_11" * (pointer_declarator "****extraout_ECX_11" * (pointer_declarator "***extraout_ECX_11" * (pointer_declarator "**extraout_ECX_11" * (pointer_declarator "*extraout_ECX_11" * identifier))))))) ;) (declaration "uint *******extraout_ECX_12;" type_identifier (pointer_declarator "*******extraout_ECX_12" * (pointer_declarator "******extraout_ECX_12" * (pointer_declarator "*****extraout_ECX_12" * (pointer_declarator "****extraout_ECX_12" * (pointer_declarator "***extraout_ECX_12" * (pointer_declarator "**extraout_ECX_12" * (pointer_declarator "*extraout_ECX_12" * identifier))))))) ;) (declaration "uint *******extraout_ECX_13;" type_identifier (pointer_declarator "*******extraout_ECX_13" * (pointer_declarator "******extraout_ECX_13" * (pointer_declarator "*****extraout_ECX_13" * (pointer_declarator "****extraout_ECX_13" * (pointer_declarator "***extraout_ECX_13" * (pointer_declarator "**extraout_ECX_13" * (pointer_declarator "*extraout_ECX_13" * identifier))))))) ;) (declaration "uint *******extraout_ECX_14;" type_identifier (pointer_declarator "*******extraout_ECX_14" * (pointer_declarator "******extraout_ECX_14" * (pointer_declarator "*****extraout_ECX_14" * (pointer_declarator "****extraout_ECX_14" * (pointer_declarator "***extraout_ECX_14" * (pointer_declarator "**extraout_ECX_14" * (pointer_declarator "*extraout_ECX_14" * identifier))))))) ;) (declaration "uint *******extraout_ECX_15;" type_identifier (pointer_declarator "*******extraout_ECX_15" * (pointer_declarator "******extraout_ECX_15" * (pointer_declarator "*****extraout_ECX_15" * (pointer_declarator "****extraout_ECX_15" * (pointer_declarator "***extraout_ECX_15" * (pointer_declarator "**extraout_ECX_15" * (pointer_declarator "*extraout_ECX_15" * identifier))))))) ;) (declaration "uint *******extraout_ECX_16;" type_identifier (pointer_declarator "*******extraout_ECX_16" * (pointer_declarator "******extraout_ECX_16" * (pointer_declarator "*****extraout_ECX_16" * (pointer_declarator "****extraout_ECX_16" * (pointer_declarator "***extraout_ECX_16" * (pointer_declarator "**extraout_ECX_16" * (pointer_declarator "*extraout_ECX_16" * identifier))))))) ;) (declaration "uint *******extraout_ECX_17;" type_identifier (pointer_declarator "*******extraout_ECX_17" * (pointer_declarator "******extraout_ECX_17" * (pointer_declarator "*****extraout_ECX_17" * (pointer_declarator "****extraout_ECX_17" * (pointer_declarator "***extraout_ECX_17" * (pointer_declarator "**extraout_ECX_17" * (pointer_declarator "*extraout_ECX_17" * identifier))))))) ;) (declaration "uint *******extraout_ECX_18;" type_identifier (pointer_declarator "*******extraout_ECX_18" * (pointer_declarator "******extraout_ECX_18" * (pointer_declarator "*****extraout_ECX_18" * (pointer_declarator "****extraout_ECX_18" * (pointer_declarator "***extraout_ECX_18" * (pointer_declarator "**extraout_ECX_18" * (pointer_declarator "*extraout_ECX_18" * identifier))))))) ;) (declaration "uint *******extraout_ECX_19;" type_identifier (pointer_declarator "*******extraout_ECX_19" * (pointer_declarator "******extraout_ECX_19" * (pointer_declarator "*****extraout_ECX_19" * (pointer_declarator "****extraout_ECX_19" * (pointer_declarator "***extraout_ECX_19" * (pointer_declarator "**extraout_ECX_19" * (pointer_declarator "*extraout_ECX_19" * identifier))))))) ;) (declaration "uint *******extraout_ECX_20;" type_identifier (pointer_declarator "*******extraout_ECX_20" * (pointer_declarator "******extraout_ECX_20" * (pointer_declarator "*****extraout_ECX_20" * (pointer_declarator "****extraout_ECX_20" * (pointer_declarator "***extraout_ECX_20" * (pointer_declarator "**extraout_ECX_20" * (pointer_declarator "*extraout_ECX_20" * identifier))))))) ;) (declaration "uint *******extraout_ECX_21;" type_identifier (pointer_declarator "*******extraout_ECX_21" * (pointer_declarator "******extraout_ECX_21" * (pointer_declarator "*****extraout_ECX_21" * (pointer_declarator "****extraout_ECX_21" * (pointer_declarator "***extraout_ECX_21" * (pointer_declarator "**extraout_ECX_21" * (pointer_declarator "*extraout_ECX_21" * identifier))))))) ;) (declaration "uint *******extraout_ECX_22;" type_identifier (pointer_declarator "*******extraout_ECX_22" * (pointer_declarator "******extraout_ECX_22" * (pointer_declarator "*****extraout_ECX_22" * (pointer_declarator "****extraout_ECX_22" * (pointer_declarator "***extraout_ECX_22" * (pointer_declarator "**extraout_ECX_22" * (pointer_declarator "*extraout_ECX_22" * identifier))))))) ;) (declaration "uint *******extraout_ECX_23;" type_identifier (pointer_declarator "*******extraout_ECX_23" * (pointer_declarator "******extraout_ECX_23" * (pointer_declarator "*****extraout_ECX_23" * (pointer_declarator "****extraout_ECX_23" * (pointer_declarator "***extraout_ECX_23" * (pointer_declarator "**extraout_ECX_23" * (pointer_declarator "*extraout_ECX_23" * identifier))))))) ;) (declaration "uint *******extraout_ECX_24;" type_identifier (pointer_declarator "*******extraout_ECX_24" * (pointer_declarator "******extraout_ECX_24" * (pointer_declarator "*****extraout_ECX_24" * (pointer_declarator "****extraout_ECX_24" * (pointer_declarator "***extraout_ECX_24" * (pointer_declarator "**extraout_ECX_24" * (pointer_declarator "*extraout_ECX_24" * identifier))))))) ;) (declaration "uint *******extraout_ECX_25;" type_identifier (pointer_declarator "*******extraout_ECX_25" * (pointer_declarator "******extraout_ECX_25" * (pointer_declarator "*****extraout_ECX_25" * (pointer_declarator "****extraout_ECX_25" * (pointer_declarator "***extraout_ECX_25" * (pointer_declarator "**extraout_ECX_25" * (pointer_declarator "*extraout_ECX_25" * identifier))))))) ;) (declaration "uint *******extraout_ECX_26;" type_identifier (pointer_declarator "*******extraout_ECX_26" * (pointer_declarator "******extraout_ECX_26" * (pointer_declarator "*****extraout_ECX_26" * (pointer_declarator "****extraout_ECX_26" * (pointer_declarator "***extraout_ECX_26" * (pointer_declarator "**extraout_ECX_26" * (pointer_declarator "*extraout_ECX_26" * identifier))))))) ;) (declaration "uint *******extraout_ECX_27;" type_identifier (pointer_declarator "*******extraout_ECX_27" * (pointer_declarator "******extraout_ECX_27" * (pointer_declarator "*****extraout_ECX_27" * (pointer_declarator "****extraout_ECX_27" * (pointer_declarator "***extraout_ECX_27" * (pointer_declarator "**extraout_ECX_27" * (pointer_declarator "*extraout_ECX_27" * identifier))))))) ;) (declaration "uint *******extraout_ECX_28;" type_identifier (pointer_declarator "*******extraout_ECX_28" * (pointer_declarator "******extraout_ECX_28" * (pointer_declarator "*****extraout_ECX_28" * (pointer_declarator "****extraout_ECX_28" * (pointer_declarator "***extraout_ECX_28" * (pointer_declarator "**extraout_ECX_28" * (pointer_declarator "*extraout_ECX_28" * identifier))))))) ;) (declaration "uint *******extraout_ECX_29;" type_identifier (pointer_declarator "*******extraout_ECX_29" * (pointer_declarator "******extraout_ECX_29" * (pointer_declarator "*****extraout_ECX_29" * (pointer_declarator "****extraout_ECX_29" * (pointer_declarator "***extraout_ECX_29" * (pointer_declarator "**extraout_ECX_29" * (pointer_declarator "*extraout_ECX_29" * identifier))))))) ;) (declaration "uint *******extraout_ECX_30;" type_identifier (pointer_declarator "*******extraout_ECX_30" * (pointer_declarator "******extraout_ECX_30" * (pointer_declarator "*****extraout_ECX_30" * (pointer_declarator "****extraout_ECX_30" * (pointer_declarator "***extraout_ECX_30" * (pointer_declarator "**extraout_ECX_30" * (pointer_declarator "*extraout_ECX_30" * identifier))))))) ;) (declaration "uint *******extraout_ECX_31;" type_identifier (pointer_declarator "*******extraout_ECX_31" * (pointer_declarator "******extraout_ECX_31" * (pointer_declarator "*****extraout_ECX_31" * (pointer_declarator "****extraout_ECX_31" * (pointer_declarator "***extraout_ECX_31" * (pointer_declarator "**extraout_ECX_31" * (pointer_declarator "*extraout_ECX_31" * identifier))))))) ;) (declaration "uint ******ppppppuVar21;" type_identifier (pointer_declarator "******ppppppuVar21" * (pointer_declarator "*****ppppppuVar21" * (pointer_declarator "****ppppppuVar21" * (pointer_declarator "***ppppppuVar21" * (pointer_declarator "**ppppppuVar21" * (pointer_declarator "*ppppppuVar21" * identifier)))))) ;) (declaration "uint *******pppppppuVar22;" type_identifier (pointer_declarator "*******pppppppuVar22" * (pointer_declarator "******pppppppuVar22" * (pointer_declarator "*****pppppppuVar22" * (pointer_declarator "****pppppppuVar22" * (pointer_declarator "***pppppppuVar22" * (pointer_declarator "**pppppppuVar22" * (pointer_declarator "*pppppppuVar22" * identifier))))))) ;) (declaration "undefined1 *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "undefined1 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "undefined1 *puVar26;" type_identifier (pointer_declarator "*puVar26" * identifier) ;) (declaration "uint *******pppppppuVar27;" type_identifier (pointer_declarator "*******pppppppuVar27" * (pointer_declarator "******pppppppuVar27" * (pointer_declarator "*****pppppppuVar27" * (pointer_declarator "****pppppppuVar27" * (pointer_declarator "***pppppppuVar27" * (pointer_declarator "**pppppppuVar27" * (pointer_declarator "*pppppppuVar27" * identifier))))))) ;) (declaration "uint *******pppppppuVar28;" type_identifier (pointer_declarator "*******pppppppuVar28" * (pointer_declarator "******pppppppuVar28" * (pointer_declarator "*****pppppppuVar28" * (pointer_declarator "****pppppppuVar28" * (pointer_declarator "***pppppppuVar28" * (pointer_declarator "**pppppppuVar28" * (pointer_declarator "*pppppppuVar28" * identifier))))))) ;) (declaration "uint *******pppppppuVar29;" type_identifier (pointer_declarator "*******pppppppuVar29" * (pointer_declarator "******pppppppuVar29" * (pointer_declarator "*****pppppppuVar29" * (pointer_declarator "****pppppppuVar29" * (pointer_declarator "***pppppppuVar29" * (pointer_declarator "**pppppppuVar29" * (pointer_declarator "*pppppppuVar29" * identifier))))))) ;) (declaration "byte *pbVar30;" type_identifier (pointer_declarator "*pbVar30" * identifier) ;) (declaration "byte *pbVar31;" type_identifier (pointer_declarator "*pbVar31" * identifier) ;) (declaration "uint *******pppppppuVar32;" type_identifier (pointer_declarator "*******pppppppuVar32" * (pointer_declarator "******pppppppuVar32" * (pointer_declarator "*****pppppppuVar32" * (pointer_declarator "****pppppppuVar32" * (pointer_declarator "***pppppppuVar32" * (pointer_declarator "**pppppppuVar32" * (pointer_declarator "*pppppppuVar32" * identifier))))))) ;) (declaration "bool bVar33;" primitive_type identifier ;) (declaration "bool bVar34;" primitive_type identifier ;) (declaration "bool bVar35;" primitive_type identifier ;) (declaration "byte bVar36;" type_identifier identifier ;) (declaration "undefined1 auStack_1ac [8];" type_identifier (array_declarator "auStack_1ac [8]" identifier [ number_literal ]) ;) (declaration "uint *******local_1a4;" type_identifier (pointer_declarator "*******local_1a4" * (pointer_declarator "******local_1a4" * (pointer_declarator "*****local_1a4" * (pointer_declarator "****local_1a4" * (pointer_declarator "***local_1a4" * (pointer_declarator "**local_1a4" * (pointer_declarator "*local_1a4" * identifier))))))) ;) (declaration "uint *******local_1a0;" type_identifier (pointer_declarator "*******local_1a0" * (pointer_declarator "******local_1a0" * (pointer_declarator "*****local_1a0" * (pointer_declarator "****local_1a0" * (pointer_declarator "***local_1a0" * (pointer_declarator "**local_1a0" * (pointer_declarator "*local_1a0" * identifier))))))) ;) (declaration "int local_19c;" primitive_type identifier ;) (declaration "uint *******local_198;" type_identifier (pointer_declarator "*******local_198" * (pointer_declarator "******local_198" * (pointer_declarator "*****local_198" * (pointer_declarator "****local_198" * (pointer_declarator "***local_198" * (pointer_declarator "**local_198" * (pointer_declarator "*local_198" * identifier))))))) ;) (declaration "uint *******local_194;" type_identifier (pointer_declarator "*******local_194" * (pointer_declarator "******local_194" * (pointer_declarator "*****local_194" * (pointer_declarator "****local_194" * (pointer_declarator "***local_194" * (pointer_declarator "**local_194" * (pointer_declarator "*local_194" * identifier))))))) ;) (declaration "uint *******local_190;" type_identifier (pointer_declarator "*******local_190" * (pointer_declarator "******local_190" * (pointer_declarator "*****local_190" * (pointer_declarator "****local_190" * (pointer_declarator "***local_190" * (pointer_declarator "**local_190" * (pointer_declarator "*local_190" * identifier))))))) ;) (declaration "uint *******local_18c;" type_identifier (pointer_declarator "*******local_18c" * (pointer_declarator "******local_18c" * (pointer_declarator "*****local_18c" * (pointer_declarator "****local_18c" * (pointer_declarator "***local_18c" * (pointer_declarator "**local_18c" * (pointer_declarator "*local_18c" * identifier))))))) ;) (declaration "uint ******local_188;" type_identifier (pointer_declarator "******local_188" * (pointer_declarator "*****local_188" * (pointer_declarator "****local_188" * (pointer_declarator "***local_188" * (pointer_declarator "**local_188" * (pointer_declarator "*local_188" * identifier)))))) ;) (declaration "uint *******local_184;" type_identifier (pointer_declarator "*******local_184" * (pointer_declarator "******local_184" * (pointer_declarator "*****local_184" * (pointer_declarator "****local_184" * (pointer_declarator "***local_184" * (pointer_declarator "**local_184" * (pointer_declarator "*local_184" * identifier))))))) ;) (declaration "uint ******local_180;" type_identifier (pointer_declarator "******local_180" * (pointer_declarator "*****local_180" * (pointer_declarator "****local_180" * (pointer_declarator "***local_180" * (pointer_declarator "**local_180" * (pointer_declarator "*local_180" * identifier)))))) ;) (declaration "uint *******local_17c;" type_identifier (pointer_declarator "*******local_17c" * (pointer_declarator "******local_17c" * (pointer_declarator "*****local_17c" * (pointer_declarator "****local_17c" * (pointer_declarator "***local_17c" * (pointer_declarator "**local_17c" * (pointer_declarator "*local_17c" * identifier))))))) ;) (declaration "uint *******local_178;" type_identifier (pointer_declarator "*******local_178" * (pointer_declarator "******local_178" * (pointer_declarator "*****local_178" * (pointer_declarator "****local_178" * (pointer_declarator "***local_178" * (pointer_declarator "**local_178" * (pointer_declarator "*local_178" * identifier))))))) ;) (declaration "uint *******local_174;" type_identifier (pointer_declarator "*******local_174" * (pointer_declarator "******local_174" * (pointer_declarator "*****local_174" * (pointer_declarator "****local_174" * (pointer_declarator "***local_174" * (pointer_declarator "**local_174" * (pointer_declarator "*local_174" * identifier))))))) ;) (declaration "uint *******local_170;" type_identifier (pointer_declarator "*******local_170" * (pointer_declarator "******local_170" * (pointer_declarator "*****local_170" * (pointer_declarator "****local_170" * (pointer_declarator "***local_170" * (pointer_declarator "**local_170" * (pointer_declarator "*local_170" * identifier))))))) ;) (declaration "uint *******local_16c;" type_identifier (pointer_declarator "*******local_16c" * (pointer_declarator "******local_16c" * (pointer_declarator "*****local_16c" * (pointer_declarator "****local_16c" * (pointer_declarator "***local_16c" * (pointer_declarator "**local_16c" * (pointer_declarator "*local_16c" * identifier))))))) ;) (declaration "uint local_168;" type_identifier identifier ;) (declaration "uint ******local_164;" type_identifier (pointer_declarator "******local_164" * (pointer_declarator "*****local_164" * (pointer_declarator "****local_164" * (pointer_declarator "***local_164" * (pointer_declarator "**local_164" * (pointer_declarator "*local_164" * identifier)))))) ;) (declaration "uint ******local_160;" type_identifier (pointer_declarator "******local_160" * (pointer_declarator "*****local_160" * (pointer_declarator "****local_160" * (pointer_declarator "***local_160" * (pointer_declarator "**local_160" * (pointer_declarator "*local_160" * identifier)))))) ;) (declaration "undefined4 *local_15c;" type_identifier (pointer_declarator "*local_15c" * identifier) ;) (declaration "undefined4 *local_158;" type_identifier (pointer_declarator "*local_158" * identifier) ;) (declaration "uint *******local_154;" type_identifier (pointer_declarator "*******local_154" * (pointer_declarator "******local_154" * (pointer_declarator "*****local_154" * (pointer_declarator "****local_154" * (pointer_declarator "***local_154" * (pointer_declarator "**local_154" * (pointer_declarator "*local_154" * identifier))))))) ;) (declaration "uint ******local_150;" type_identifier (pointer_declarator "******local_150" * (pointer_declarator "*****local_150" * (pointer_declarator "****local_150" * (pointer_declarator "***local_150" * (pointer_declarator "**local_150" * (pointer_declarator "*local_150" * identifier)))))) ;) (declaration "int local_14c;" primitive_type identifier ;) (declaration "uint ******local_148;" type_identifier (pointer_declarator "******local_148" * (pointer_declarator "*****local_148" * (pointer_declarator "****local_148" * (pointer_declarator "***local_148" * (pointer_declarator "**local_148" * (pointer_declarator "*local_148" * identifier)))))) ;) (declaration "uint ******local_144;" type_identifier (pointer_declarator "******local_144" * (pointer_declarator "*****local_144" * (pointer_declarator "****local_144" * (pointer_declarator "***local_144" * (pointer_declarator "**local_144" * (pointer_declarator "*local_144" * identifier)))))) ;) (declaration "uint *******local_140;" type_identifier (pointer_declarator "*******local_140" * (pointer_declarator "******local_140" * (pointer_declarator "*****local_140" * (pointer_declarator "****local_140" * (pointer_declarator "***local_140" * (pointer_declarator "**local_140" * (pointer_declarator "*local_140" * identifier))))))) ;) (declaration "uint *******local_13c;" type_identifier (pointer_declarator "*******local_13c" * (pointer_declarator "******local_13c" * (pointer_declarator "*****local_13c" * (pointer_declarator "****local_13c" * (pointer_declarator "***local_13c" * (pointer_declarator "**local_13c" * (pointer_declarator "*local_13c" * identifier))))))) ;) (declaration "char local_138;" primitive_type identifier ;) (declaration "byte local_137;" type_identifier identifier ;) (declaration "byte local_136;" type_identifier identifier ;) (declaration "char local_135;" primitive_type identifier ;) (declaration "uint *******local_134;" type_identifier (pointer_declarator "*******local_134" * (pointer_declarator "******local_134" * (pointer_declarator "*****local_134" * (pointer_declarator "****local_134" * (pointer_declarator "***local_134" * (pointer_declarator "**local_134" * (pointer_declarator "*local_134" * identifier))))))) ;) (declaration "uint *******local_130;" type_identifier (pointer_declarator "*******local_130" * (pointer_declarator "******local_130" * (pointer_declarator "*****local_130" * (pointer_declarator "****local_130" * (pointer_declarator "***local_130" * (pointer_declarator "**local_130" * (pointer_declarator "*local_130" * identifier))))))) ;) (declaration "uint *******local_12c;" type_identifier (pointer_declarator "*******local_12c" * (pointer_declarator "******local_12c" * (pointer_declarator "*****local_12c" * (pointer_declarator "****local_12c" * (pointer_declarator "***local_12c" * (pointer_declarator "**local_12c" * (pointer_declarator "*local_12c" * identifier))))))) ;) (declaration "undefined4 local_128;" type_identifier identifier ;) (declaration "uint *******local_124;" type_identifier (pointer_declarator "*******local_124" * (pointer_declarator "******local_124" * (pointer_declarator "*****local_124" * (pointer_declarator "****local_124" * (pointer_declarator "***local_124" * (pointer_declarator "**local_124" * (pointer_declarator "*local_124" * identifier))))))) ;) (declaration "uint *******local_120;" type_identifier (pointer_declarator "*******local_120" * (pointer_declarator "******local_120" * (pointer_declarator "*****local_120" * (pointer_declarator "****local_120" * (pointer_declarator "***local_120" * (pointer_declarator "**local_120" * (pointer_declarator "*local_120" * identifier))))))) ;) (declaration "int *local_11c;" primitive_type (pointer_declarator "*local_11c" * identifier) ;) (declaration "undefined4 local_118;" type_identifier identifier ;) (declaration "int local_110;" primitive_type identifier ;) (declaration "char local_10c [4];" primitive_type (array_declarator "local_10c [4]" identifier [ number_literal ]) ;) (declaration "undefined4 local_108;" type_identifier identifier ;) (declaration "uint *******local_100 [3];" type_identifier (pointer_declarator "*******local_100 [3]" * (pointer_declarator "******local_100 [3]" * (pointer_declarator "*****local_100 [3]" * (pointer_declarator "****local_100 [3]" * (pointer_declarator "***local_100 [3]" * (pointer_declarator "**local_100 [3]" * (pointer_declarator "*local_100 [3]" * (array_declarator "local_100 [3]" identifier [ number_literal ])))))))) ;) (declaration "undefined1 local_f1;" type_identifier identifier ;) (declaration "uint *******local_f0;" type_identifier (pointer_declarator "*******local_f0" * (pointer_declarator "******local_f0" * (pointer_declarator "*****local_f0" * (pointer_declarator "****local_f0" * (pointer_declarator "***local_f0" * (pointer_declarator "**local_f0" * (pointer_declarator "*local_f0" * identifier))))))) ;) (declaration "uint *******local_ec;" type_identifier (pointer_declarator "*******local_ec" * (pointer_declarator "******local_ec" * (pointer_declarator "*****local_ec" * (pointer_declarator "****local_ec" * (pointer_declarator "***local_ec" * (pointer_declarator "**local_ec" * (pointer_declarator "*local_ec" * identifier))))))) ;) (declaration "uint *******local_e8;" type_identifier (pointer_declarator "*******local_e8" * (pointer_declarator "******local_e8" * (pointer_declarator "*****local_e8" * (pointer_declarator "****local_e8" * (pointer_declarator "***local_e8" * (pointer_declarator "**local_e8" * (pointer_declarator "*local_e8" * identifier))))))) ;) (declaration "uint ******local_e4;" type_identifier (pointer_declarator "******local_e4" * (pointer_declarator "*****local_e4" * (pointer_declarator "****local_e4" * (pointer_declarator "***local_e4" * (pointer_declarator "**local_e4" * (pointer_declarator "*local_e4" * identifier)))))) ;) (declaration "uint *******local_e0;" type_identifier (pointer_declarator "*******local_e0" * (pointer_declarator "******local_e0" * (pointer_declarator "*****local_e0" * (pointer_declarator "****local_e0" * (pointer_declarator "***local_e0" * (pointer_declarator "**local_e0" * (pointer_declarator "*local_e0" * identifier))))))) ;) (declaration "uint *******local_dc;" type_identifier (pointer_declarator "*******local_dc" * (pointer_declarator "******local_dc" * (pointer_declarator "*****local_dc" * (pointer_declarator "****local_dc" * (pointer_declarator "***local_dc" * (pointer_declarator "**local_dc" * (pointer_declarator "*local_dc" * identifier))))))) ;) (declaration "uint *******local_d8;" type_identifier (pointer_declarator "*******local_d8" * (pointer_declarator "******local_d8" * (pointer_declarator "*****local_d8" * (pointer_declarator "****local_d8" * (pointer_declarator "***local_d8" * (pointer_declarator "**local_d8" * (pointer_declarator "*local_d8" * identifier))))))) ;) (declaration "int *local_d4;" primitive_type (pointer_declarator "*local_d4" * identifier) ;) (declaration "int *local_d0;" primitive_type (pointer_declarator "*local_d0" * identifier) ;) (declaration "int *local_cc;" primitive_type (pointer_declarator "*local_cc" * identifier) ;) (declaration "int *local_c8;" primitive_type (pointer_declarator "*local_c8" * identifier) ;) (declaration "int *local_c4;" primitive_type (pointer_declarator "*local_c4" * identifier) ;) (declaration "int *local_c0;" primitive_type (pointer_declarator "*local_c0" * identifier) ;) (declaration "int *local_bc;" primitive_type (pointer_declarator "*local_bc" * identifier) ;) (declaration "int *local_b8;" primitive_type (pointer_declarator "*local_b8" * identifier) ;) (declaration "int *local_b4;" primitive_type (pointer_declarator "*local_b4" * identifier) ;) (declaration "void *local_b0;" primitive_type (pointer_declarator "*local_b0" * identifier) ;) (declaration "undefined4 local_ac;" type_identifier identifier ;) (declaration "void *local_a8;" primitive_type (pointer_declarator "*local_a8" * identifier) ;) (declaration "uint local_a4;" type_identifier identifier ;) (declaration "byte *local_a0;" type_identifier (pointer_declarator "*local_a0" * identifier) ;) (declaration "uint *******local_9c;" type_identifier (pointer_declarator "*******local_9c" * (pointer_declarator "******local_9c" * (pointer_declarator "*****local_9c" * (pointer_declarator "****local_9c" * (pointer_declarator "***local_9c" * (pointer_declarator "**local_9c" * (pointer_declarator "*local_9c" * identifier))))))) ;) (declaration "uint *******local_98;" type_identifier (pointer_declarator "*******local_98" * (pointer_declarator "******local_98" * (pointer_declarator "*****local_98" * (pointer_declarator "****local_98" * (pointer_declarator "***local_98" * (pointer_declarator "**local_98" * (pointer_declarator "*local_98" * identifier))))))) ;) (declaration "uint ******local_94 [4];" type_identifier (pointer_declarator "******local_94 [4]" * (pointer_declarator "*****local_94 [4]" * (pointer_declarator "****local_94 [4]" * (pointer_declarator "***local_94 [4]" * (pointer_declarator "**local_94 [4]" * (pointer_declarator "*local_94 [4]" * (array_declarator "local_94 [4]" identifier [ number_literal ]))))))) ;) (declaration "uint *******local_84;" type_identifier (pointer_declarator "*******local_84" * (pointer_declarator "******local_84" * (pointer_declarator "*****local_84" * (pointer_declarator "****local_84" * (pointer_declarator "***local_84" * (pointer_declarator "**local_84" * (pointer_declarator "*local_84" * identifier))))))) ;) (declaration "uint *******local_80;" type_identifier (pointer_declarator "*******local_80" * (pointer_declarator "******local_80" * (pointer_declarator "*****local_80" * (pointer_declarator "****local_80" * (pointer_declarator "***local_80" * (pointer_declarator "**local_80" * (pointer_declarator "*local_80" * identifier))))))) ;) (declaration "uint ******local_7c [4];" type_identifier (pointer_declarator "******local_7c [4]" * (pointer_declarator "*****local_7c [4]" * (pointer_declarator "****local_7c [4]" * (pointer_declarator "***local_7c [4]" * (pointer_declarator "**local_7c [4]" * (pointer_declarator "*local_7c [4]" * (array_declarator "local_7c [4]" identifier [ number_literal ]))))))) ;) (declaration "uint *******local_6c;" type_identifier (pointer_declarator "*******local_6c" * (pointer_declarator "******local_6c" * (pointer_declarator "*****local_6c" * (pointer_declarator "****local_6c" * (pointer_declarator "***local_6c" * (pointer_declarator "**local_6c" * (pointer_declarator "*local_6c" * identifier))))))) ;) (declaration "undefined4 local_68;" type_identifier identifier ;) (declaration "uint *******local_64;" type_identifier (pointer_declarator "*******local_64" * (pointer_declarator "******local_64" * (pointer_declarator "*****local_64" * (pointer_declarator "****local_64" * (pointer_declarator "***local_64" * (pointer_declarator "**local_64" * (pointer_declarator "*local_64" * identifier))))))) ;) (declaration "uint ******local_60;" type_identifier (pointer_declarator "******local_60" * (pointer_declarator "*****local_60" * (pointer_declarator "****local_60" * (pointer_declarator "***local_60" * (pointer_declarator "**local_60" * (pointer_declarator "*local_60" * identifier)))))) ;) (declaration "uint *******local_5c;" type_identifier (pointer_declarator "*******local_5c" * (pointer_declarator "******local_5c" * (pointer_declarator "*****local_5c" * (pointer_declarator "****local_5c" * (pointer_declarator "***local_5c" * (pointer_declarator "**local_5c" * (pointer_declarator "*local_5c" * identifier))))))) ;) (declaration "uint ******local_58;" type_identifier (pointer_declarator "******local_58" * (pointer_declarator "*****local_58" * (pointer_declarator "****local_58" * (pointer_declarator "***local_58" * (pointer_declarator "**local_58" * (pointer_declarator "*local_58" * identifier)))))) ;) (declaration "uint ******local_54;" type_identifier (pointer_declarator "******local_54" * (pointer_declarator "*****local_54" * (pointer_declarator "****local_54" * (pointer_declarator "***local_54" * (pointer_declarator "**local_54" * (pointer_declarator "*local_54" * identifier)))))) ;) (declaration "uint ******local_50;" type_identifier (pointer_declarator "******local_50" * (pointer_declarator "*****local_50" * (pointer_declarator "****local_50" * (pointer_declarator "***local_50" * (pointer_declarator "**local_50" * (pointer_declarator "*local_50" * identifier)))))) ;) (declaration "uint ******local_4c;" type_identifier (pointer_declarator "******local_4c" * (pointer_declarator "*****local_4c" * (pointer_declarator "****local_4c" * (pointer_declarator "***local_4c" * (pointer_declarator "**local_4c" * (pointer_declarator "*local_4c" * identifier)))))) ;) (declaration "uint ******local_48;" type_identifier (pointer_declarator "******local_48" * (pointer_declarator "*****local_48" * (pointer_declarator "****local_48" * (pointer_declarator "***local_48" * (pointer_declarator "**local_48" * (pointer_declarator "*local_48" * identifier)))))) ;) (declaration "uint ******local_44;" type_identifier (pointer_declarator "******local_44" * (pointer_declarator "*****local_44" * (pointer_declarator "****local_44" * (pointer_declarator "***local_44" * (pointer_declarator "**local_44" * (pointer_declarator "*local_44" * identifier)))))) ;) (declaration "uint ******local_40;" type_identifier (pointer_declarator "******local_40" * (pointer_declarator "*****local_40" * (pointer_declarator "****local_40" * (pointer_declarator "***local_40" * (pointer_declarator "**local_40" * (pointer_declarator "*local_40" * identifier)))))) ;) (declaration "uint ******local_3c;" type_identifier (pointer_declarator "******local_3c" * (pointer_declarator "*****local_3c" * (pointer_declarator "****local_3c" * (pointer_declarator "***local_3c" * (pointer_declarator "**local_3c" * (pointer_declarator "*local_3c" * identifier)))))) ;) (declaration "uint ******local_38;" type_identifier (pointer_declarator "******local_38" * (pointer_declarator "*****local_38" * (pointer_declarator "****local_38" * (pointer_declarator "***local_38" * (pointer_declarator "**local_38" * (pointer_declarator "*local_38" * identifier)))))) ;) (declaration "uint ******local_34;" type_identifier (pointer_declarator "******local_34" * (pointer_declarator "*****local_34" * (pointer_declarator "****local_34" * (pointer_declarator "***local_34" * (pointer_declarator "**local_34" * (pointer_declarator "*local_34" * identifier)))))) ;) (declaration "uint ******local_30;" type_identifier (pointer_declarator "******local_30" * (pointer_declarator "*****local_30" * (pointer_declarator "****local_30" * (pointer_declarator "***local_30" * (pointer_declarator "**local_30" * (pointer_declarator "*local_30" * identifier)))))) ;) (declaration "uint ******local_2c;" type_identifier (pointer_declarator "******local_2c" * (pointer_declarator "*****local_2c" * (pointer_declarator "****local_2c" * (pointer_declarator "***local_2c" * (pointer_declarator "**local_2c" * (pointer_declarator "*local_2c" * identifier)))))) ;) (declaration "uint ******local_28;" type_identifier (pointer_declarator "******local_28" * (pointer_declarator "*****local_28" * (pointer_declarator "****local_28" * (pointer_declarator "***local_28" * (pointer_declarator "**local_28" * (pointer_declarator "*local_28" * identifier)))))) ;) (declaration "uint ******local_24;" type_identifier (pointer_declarator "******local_24" * (pointer_declarator "*****local_24" * (pointer_declarator "****local_24" * (pointer_declarator "***local_24" * (pointer_declarator "**local_24" * (pointer_declarator "*local_24" * identifier)))))) ;) (declaration "undefined1 *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (expression_statement "bVar36 = 0;" (assignment_expression "bVar36 = 0" identifier = number_literal) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (if_statement "if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }" if (parenthesized_expression "(*(int *)(DAT_00302378 + 0xc) == 0)" ( (binary_expression "*(int *)(DAT_00302378 + 0xc) == 0" (pointer_expression "*(int *)(DAT_00302378 + 0xc)" * (cast_expression "(int *)(DAT_00302378 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00302378 + 0xc)" ( (binary_expression "DAT_00302378 + 0xc" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }" { (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) comment (expression_statement "FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);" (call_expression "FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378)" identifier (argument_list "("../../gold/parameters.h",0x69,"target",DAT_00302378)" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""target"" " string_content ") , identifier ))) ;) })) (expression_statement "pppppuVar15 = *(uint ******)(DAT_00302378 + 8);" (assignment_expression "pppppuVar15 = *(uint ******)(DAT_00302378 + 8)" identifier = (pointer_expression "*(uint ******)(DAT_00302378 + 8)" * (cast_expression "(uint ******)(DAT_00302378 + 8)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(DAT_00302378 + 8)" ( (binary_expression "DAT_00302378 + 8" identifier + number_literal) ))))) ;) (expression_statement "local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);" (assignment_expression "local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" identifier = (pointer_expression "*(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" * (cast_expression "(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" ( (binary_expression "*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60" (pointer_expression "*(int *)(*(int *)(DAT_00302378 + 0xc) + 4)" * (cast_expression "(int *)(*(int *)(DAT_00302378 + 0xc) + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(DAT_00302378 + 0xc) + 4)" ( (binary_expression "*(int *)(DAT_00302378 + 0xc) + 4" (pointer_expression "*(int *)(DAT_00302378 + 0xc)" * (cast_expression "(int *)(DAT_00302378 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00302378 + 0xc)" ( (binary_expression "DAT_00302378 + 0xc" identifier + number_literal) )))) + number_literal) )))) + number_literal) ))))) ;) (expression_statement "local_130 = (uint *******)param_1[10];" (assignment_expression "local_130 = (uint *******)param_1[10]" identifier = (cast_expression "(uint *******)param_1[10]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[10]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22 = (uint *******)&DAT_00302378;" (assignment_expression "pppppppuVar22 = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "pppppppuVar29 = (uint *******)&__DT_PLTGOT;" (assignment_expression "pppppppuVar29 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (goto_statement "goto LAB_000a34ee;" goto statement_identifier ;)) (if_statement "if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }" if (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x18b1) == '\0')" ( (binary_expression "*(char *)((int)pppppuVar15 + 0x18b1) == '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x18b1)" * (cast_expression "(char *)((int)pppppuVar15 + 0x18b1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x18b1)" ( (binary_expression "(int)pppppuVar15 + 0x18b1" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }" { (if_statement "if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }" if (parenthesized_expression "(pppppuVar15[0x164d] == (uint ****)0x0)" ( (binary_expression "pppppuVar15[0x164d] == (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" identifier [ number_literal ]) == (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }" { (expression_statement "local_136 = *(byte *)(param_3 + 0x1ce);" (assignment_expression "local_136 = *(byte *)(param_3 + 0x1ce)" identifier = (pointer_expression "*(byte *)(param_3 + 0x1ce)" * (cast_expression "(byte *)(param_3 + 0x1ce)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x1ce)" ( (binary_expression "param_3 + 0x1ce" identifier + number_literal) ))))) ;) (expression_statement "pppppppuVar22 = (uint *******)(uint)local_136;" (assignment_expression "pppppppuVar22 = (uint *******)(uint)local_136" identifier = (cast_expression "(uint *******)(uint)local_136" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (cast_expression "(uint)local_136" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }" if (parenthesized_expression "(local_136 == 0)" ( (binary_expression "local_136 == 0" identifier == number_literal) )) (compound_statement "{\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }" { (if_statement "if (local_130 == (uint *******)0x0) {\n          return;\n        }" if (parenthesized_expression "(local_130 == (uint *******)0x0)" ( (binary_expression "local_130 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (expression_statement "local_148 = (uint ******)param_4[2];" (assignment_expression "local_148 = (uint ******)param_4[2]" identifier = (cast_expression "(uint ******)param_4[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_4[2]" identifier [ number_literal ]))) ;) (expression_statement "local_160 = *(uint *******)(*param_4 + 8);" (assignment_expression "local_160 = *(uint *******)(*param_4 + 8)" identifier = (pointer_expression "*(uint *******)(*param_4 + 8)" * (cast_expression "(uint *******)(*param_4 + 8)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*param_4 + 8)" ( (binary_expression "*param_4 + 8" (pointer_expression "*param_4" * identifier) + number_literal) ))))) ;) (expression_statement "local_164 = (uint ******)param_4[3];" (assignment_expression "local_164 = (uint ******)param_4[3]" identifier = (cast_expression "(uint ******)param_4[3]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_4[3]" identifier [ number_literal ]))) ;) (if_statement "if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }" if (parenthesized_expression "(local_164 != (uint ******)0x0)" ( (binary_expression "local_164 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          local_164 = (uint ******)local_164[2];\n        }" { (expression_statement "local_164 = (uint ******)local_164[2];" (assignment_expression "local_164 = (uint ******)local_164[2]" identifier = (cast_expression "(uint ******)local_164[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "local_164[2]" identifier [ number_literal ]))) ;) })) (expression_statement "local_17c = (uint *******)param_4[4];" (assignment_expression "local_17c = (uint *******)param_4[4]" identifier = (cast_expression "(uint *******)param_4[4]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_4[4]" identifier [ number_literal ]))) ;) (expression_statement "local_180 = (uint ******)param_4[6];" (assignment_expression "local_180 = (uint ******)param_4[6]" identifier = (cast_expression "(uint ******)param_4[6]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_4[6]" identifier [ number_literal ]))) ;) (if_statement "if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }" if (parenthesized_expression "(local_180 != (uint ******)0x0)" ( (binary_expression "local_180 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          local_180 = (uint ******)local_180[2];\n        }" { (expression_statement "local_180 = (uint ******)local_180[2];" (assignment_expression "local_180 = (uint ******)local_180[2]" identifier = (cast_expression "(uint ******)local_180[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "local_180[2]" identifier [ number_literal ]))) ;) })) (expression_statement "local_138 = '\0';" (assignment_expression "local_138 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_135 = '\0';" (assignment_expression "local_135 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_190 = (uint *******)0x0;" (assignment_expression "local_190 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_188 = (uint ******)param_4[7];" (assignment_expression "local_188 = (uint ******)param_4[7]" identifier = (cast_expression "(uint ******)param_4[7]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_4[7]" identifier [ number_literal ]))) ;) (expression_statement "local_144 = *(uint *******)(param_4[1] + 8);" (assignment_expression "local_144 = *(uint *******)(param_4[1] + 8)" identifier = (pointer_expression "*(uint *******)(param_4[1] + 8)" * (cast_expression "(uint *******)(param_4[1] + 8)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(param_4[1] + 8)" ( (binary_expression "param_4[1] + 8" (subscript_expression "param_4[1]" identifier [ number_literal ]) + number_literal) ))))) ;) (expression_statement "local_136 = '\0';" (assignment_expression "local_136 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_000a1e71;" goto statement_identifier ;) })) (expression_statement "local_190 = (uint *******)param_1[0x15];" (assignment_expression "local_190 = (uint *******)param_1[0x15]" identifier = (cast_expression "(uint *******)param_1[0x15]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x15]" identifier [ number_literal ]))) ;) (if_statement "if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;" if (parenthesized_expression "(local_190 != (uint *******)0x0)" ( (binary_expression "local_190 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000a1e0a;" goto statement_identifier ;)) (expression_statement "local_190 = (uint *******)0x0;" (assignment_expression "local_190 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }" else (compound_statement "{\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }" { (expression_statement "pppppppuVar22 = (uint *******)param_1[0x15];" (assignment_expression "pppppppuVar22 = (uint *******)param_1[0x15]" identifier = (cast_expression "(uint *******)param_1[0x15]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x15]" identifier [ number_literal ]))) ;) (expression_statement "local_190 = pppppppuVar22;" (assignment_expression "local_190 = pppppppuVar22" identifier = identifier) ;) (if_statement "if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;" if (parenthesized_expression "(pppppppuVar22 != (uint *******)0x0)" ( (binary_expression "pppppppuVar22 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000a33a4;" goto statement_identifier ;)) }))) (labeled_statement "LAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }" statement_identifier : (if_statement "if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }" if (parenthesized_expression "(param_4 == (int *)0x0)" ( (binary_expression "param_4 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }" { (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) comment (expression_statement "FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);" (call_expression "FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22)" identifier (argument_list "("../../gold/object.cc",0x597,"do_layout",pppppppuVar22)" ( (string_literal ""../../gold/object.cc"" " string_content ") , number_literal , (string_literal ""do_layout"" " string_content ") , identifier ))) ;) }))) (if_statement "if (local_130 == (uint *******)0x0) {\n      return;\n    }" if (parenthesized_expression "(local_130 == (uint *******)0x0)" ( (binary_expression "local_130 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (expression_statement "pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);" (assignment_expression "pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20)" identifier = (cast_expression "(uint *******)FUN_0017ebf0(0x20)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_0017ebf0(0x20)" identifier (argument_list "(0x20)" ( number_literal ))))) ;) (expression_statement "local_190 = pppppppuVar22;" (assignment_expression "local_190 = pppppppuVar22" identifier = identifier) ;) (expression_statement "FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);" (call_expression "FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6)" identifier (argument_list "(param_1,pppppppuVar22,param_4,(int)local_130 << 6)" ( identifier , identifier , identifier , (binary_expression "(int)local_130 << 6" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))) ;) (expression_statement "local_160 = *pppppppuVar22;" (assignment_expression "local_160 = *pppppppuVar22" identifier = (pointer_expression "*pppppppuVar22" * identifier)) ;) (expression_statement "param_1[0x15] = (uint ******)pppppppuVar22;" (assignment_expression "param_1[0x15] = (uint ******)pppppppuVar22" (subscript_expression "param_1[0x15]" identifier [ number_literal ]) = (cast_expression "(uint ******)pppppppuVar22" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "local_148 = pppppppuVar22[2];" (assignment_expression "local_148 = pppppppuVar22[2]" identifier = (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ])) ;) (expression_statement "local_164 = pppppppuVar22[3];" (assignment_expression "local_164 = pppppppuVar22[3]" identifier = (subscript_expression "pppppppuVar22[3]" identifier [ number_literal ])) ;) (expression_statement "local_17c = (uint *******)pppppppuVar22[4];" (assignment_expression "local_17c = (uint *******)pppppppuVar22[4]" identifier = (cast_expression "(uint *******)pppppppuVar22[4]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[4]" identifier [ number_literal ]))) ;) (expression_statement "local_180 = pppppppuVar22[6];" (assignment_expression "local_180 = pppppppuVar22[6]" identifier = (subscript_expression "pppppppuVar22[6]" identifier [ number_literal ])) ;) (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" identifier = (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) ;) (expression_statement "local_188 = pppppppuVar22[7];" (assignment_expression "local_188 = pppppppuVar22[7]" identifier = (subscript_expression "pppppppuVar22[7]" identifier [ number_literal ])) ;) (expression_statement "local_144 = pppppppuVar22[1];" (assignment_expression "local_144 = pppppppuVar22[1]" identifier = (subscript_expression "pppppppuVar22[1]" identifier [ number_literal ])) ;) (expression_statement "pppppppuVar22 = local_13c;" (assignment_expression "pppppppuVar22 = local_13c" identifier = identifier) ;) (expression_statement "pppppppuVar29 = local_120;" (assignment_expression "pppppppuVar29 = local_120" identifier = identifier) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }" { (labeled_statement "LAB_000a34ee:\n      local_120 = pppppppuVar29;" statement_identifier : (expression_statement "local_120 = pppppppuVar29;" (assignment_expression "local_120 = pppppppuVar29" identifier = identifier) ;)) (expression_statement "local_13c = pppppppuVar22;" (assignment_expression "local_13c = pppppppuVar22" identifier = identifier) ;) comment (expression_statement "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);" (call_expression "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15)" identifier (argument_list "(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15)" ( (binary_expression "local_120 + -0x385a4" identifier + number_literal) , number_literal , (binary_expression "local_120 + -0x371c1" identifier + number_literal) , identifier ))) ;) })) (expression_statement "local_138 = '\x01';" (assignment_expression "local_138 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_135 = '\0';" (assignment_expression "local_135 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_136 = '\x01';" (assignment_expression "local_136 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }) (else_clause "else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }" else (compound_statement "{\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }" { (expression_statement "local_190 = (uint *******)param_1[0x15];" (assignment_expression "local_190 = (uint *******)param_1[0x15]" identifier = (cast_expression "(uint *******)param_1[0x15]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x15]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22 = param_1;" (assignment_expression "pppppppuVar22 = param_1" identifier = identifier) ;) (if_statement "if (local_190 == (uint *******)0x0) goto LAB_000a3448;" if (parenthesized_expression "(local_190 == (uint *******)0x0)" ( (binary_expression "local_190 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000a3448;" goto statement_identifier ;)) (if_statement "if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }" if (parenthesized_expression "(*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0')" ( (binary_expression "*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0'" (pointer_expression "*(char *)(*(int *)(param_2 + 0x158) + 0xc)" * (cast_expression "(char *)(*(int *)(param_2 + 0x158) + 0xc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_2 + 0x158) + 0xc)" ( (binary_expression "*(int *)(param_2 + 0x158) + 0xc" (pointer_expression "*(int *)(param_2 + 0x158)" * (cast_expression "(int *)(param_2 + 0x158)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x158)" ( (binary_expression "param_2 + 0x158" identifier + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }" { (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) comment (expression_statement "FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);" (call_expression "FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190)" identifier (argument_list "("../../gold/object.cc",0x59d,"do_layout",local_190)" ( (string_literal ""../../gold/object.cc"" " string_content ") , number_literal , (string_literal ""do_layout"" " string_content ") , identifier ))) ;) })) (if_statement "if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }" if (parenthesized_expression "(pppppuVar15[0x164d] != (uint ****)0x0)" ( (binary_expression "pppppuVar15[0x164d] != (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" identifier [ number_literal ]) != (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }" { (labeled_statement "LAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }" statement_identifier : (if_statement "if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }" if (parenthesized_expression "(*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0')" ( (binary_expression "*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0'" (pointer_expression "*(char *)(*(int *)(param_2 + 0x15c) + 0x50)" * (cast_expression "(char *)(*(int *)(param_2 + 0x15c) + 0x50)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_2 + 0x15c) + 0x50)" ( (binary_expression "*(int *)(param_2 + 0x15c) + 0x50" (pointer_expression "*(int *)(param_2 + 0x15c)" * (cast_expression "(int *)(param_2 + 0x15c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x15c)" ( (binary_expression "param_2 + 0x15c" identifier + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }" { (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) comment (expression_statement "FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);" (call_expression "FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15)" identifier (argument_list "("../../gold/object.cc",0x59f,"do_layout",pppppuVar15)" ( (string_literal ""../../gold/object.cc"" " string_content ") , number_literal , (string_literal ""do_layout"" " string_content ") , identifier ))) ;) }))) })) (labeled_statement "LAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }" statement_identifier : (if_statement "if (local_130 == (uint *******)0x0) {\n      return;\n    }" if (parenthesized_expression "(local_130 == (uint *******)0x0)" ( (binary_expression "local_130 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) }))) (expression_statement "local_138 = '\x01';" (assignment_expression "local_138 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_135 = '\x01';" (assignment_expression "local_135 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_160 = *local_190;" (assignment_expression "local_160 = *local_190" identifier = (pointer_expression "*local_190" * identifier)) ;) (expression_statement "local_148 = local_190[2];" (assignment_expression "local_148 = local_190[2]" identifier = (subscript_expression "local_190[2]" identifier [ number_literal ])) ;) (expression_statement "local_136 = '\0';" (assignment_expression "local_136 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_164 = local_190[3];" (assignment_expression "local_164 = local_190[3]" identifier = (subscript_expression "local_190[3]" identifier [ number_literal ])) ;) (expression_statement "local_17c = (uint *******)local_190[4];" (assignment_expression "local_17c = (uint *******)local_190[4]" identifier = (cast_expression "(uint *******)local_190[4]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_190[4]" identifier [ number_literal ]))) ;) (expression_statement "local_180 = local_190[6];" (assignment_expression "local_180 = local_190[6]" identifier = (subscript_expression "local_190[6]" identifier [ number_literal ])) ;) (expression_statement "local_188 = local_190[7];" (assignment_expression "local_188 = local_190[7]" identifier = (subscript_expression "local_190[7]" identifier [ number_literal ])) ;) (expression_statement "local_144 = local_190[1];" (assignment_expression "local_144 = local_190[1]" identifier = (subscript_expression "local_190[1]" identifier [ number_literal ])) ;) (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) }))) (labeled_statement "LAB_000a1e71:\n  pppppppuVar29 = local_124;" statement_identifier : (expression_statement "pppppppuVar29 = local_124;" (assignment_expression "pppppppuVar29 = local_124" identifier = identifier) ;)) (expression_statement "pppppppuVar22 = local_130;" (assignment_expression "pppppppuVar22 = local_130" identifier = identifier) ;) (expression_statement "ppppuVar14 = pppppuVar15[0x164f];" (assignment_expression "ppppuVar14 = pppppuVar15[0x164f]" identifier = (subscript_expression "pppppuVar15[0x164f]" identifier [ number_literal ])) ;) (expression_statement "local_124 = (uint *******)((uint)local_124 & 0xffffff00);" (assignment_expression "local_124 = (uint *******)((uint)local_124 & 0xffffff00)" identifier = (cast_expression "(uint *******)((uint)local_124 & 0xffffff00)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_124 & 0xffffff00)" ( (binary_expression "(uint)local_124 & 0xffffff00" (cast_expression "(uint)local_124" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }" if (parenthesized_expression "(ppppuVar14 != (uint ****)0x0)" ( (binary_expression "ppppuVar14 != (uint ****)0x0" identifier != (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }" { (expression_statement "local_124._1_3_ = SUB43(pppppppuVar29,1);" (assignment_expression "local_124._1_3_ = SUB43(pppppppuVar29,1)" (field_expression "local_124._1_3_" identifier . field_identifier) = (call_expression "SUB43(pppppppuVar29,1)" identifier (argument_list "(pppppppuVar29,1)" ( identifier , number_literal )))) ;) (expression_statement "local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));" (assignment_expression "local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" identifier = (cast_expression "(uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" identifier (argument_list "(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" ( (field_expression "local_124._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)(ppppuVar14 + 0x18)" * (cast_expression "(char *)(ppppuVar14 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppppuVar14 + 0x18)" ( (binary_expression "ppppuVar14 + 0x18" identifier + number_literal) )))) ))))) ;) (if_statement "if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }" if (parenthesized_expression "(*(char *)(ppppuVar14 + 0x18) != '\0')" ( (binary_expression "*(char *)(ppppuVar14 + 0x18) != '\0'" (pointer_expression "*(char *)(ppppuVar14 + 0x18)" * (cast_expression "(char *)(ppppuVar14 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppppuVar14 + 0x18)" ( (binary_expression "ppppuVar14 + 0x18" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }" { (expression_statement "local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);" (assignment_expression "local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1)" identifier = (cast_expression "(uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1)" ( (binary_expression "CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1" (call_expression "CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61))" identifier (argument_list "(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61))" ( (field_expression "local_124._1_3_" identifier . field_identifier) , (pointer_expression "*(undefined1 *)((int)ppppuVar14 + 0x61)" * (cast_expression "(undefined1 *)((int)ppppuVar14 + 0x61)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppuVar14 + 0x61)" ( (binary_expression "(int)ppppuVar14 + 0x61" (cast_expression "(int)ppppuVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ^ number_literal) )))) ;) })) })) (if_statement "if ((uint *******)0x3fffffff < local_130) {\n                    /* WARNING: Subroutine does not return */\n    FUN_001c5fe0();\n  }" if (parenthesized_expression "((uint *******)0x3fffffff < local_130)" ( (binary_expression "(uint *******)0x3fffffff < local_130" (cast_expression "(uint *******)0x3fffffff" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    FUN_001c5fe0();\n  }" { comment (expression_statement "FUN_001c5fe0();" (call_expression "FUN_001c5fe0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_14c = (int)local_130 * 4;" (assignment_expression "local_14c = (int)local_130 * 4" identifier = (binary_expression "(int)local_130 * 4" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "local_158 = (undefined4 *)FUN_0017ebf0(local_14c);" (assignment_expression "local_158 = (undefined4 *)FUN_0017ebf0(local_14c)" identifier = (cast_expression "(undefined4 *)FUN_0017ebf0(local_14c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0017ebf0(local_14c)" identifier (argument_list "(local_14c)" ( identifier ))))) ;) (expression_statement "iVar19 = local_14c;" (assignment_expression "iVar19 = local_14c" identifier = identifier) ;) (expression_statement "puVar8 = local_158;" (assignment_expression "puVar8 = local_158" identifier = identifier) ;) (if_statement "if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }" if (parenthesized_expression "(pppppppuVar22 != (uint *******)0x0)" ( (binary_expression "pppppppuVar22 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }" { (do_statement "do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);" do (compound_statement "{\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    }" { (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "puVar8 = puVar8 + 1;" (assignment_expression "puVar8 = puVar8 + 1" identifier = (binary_expression "puVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar8 != local_158 + (int)pppppppuVar22)" ( (binary_expression "puVar8 != local_158 + (int)pppppppuVar22" identifier != (binary_expression "local_158 + (int)pppppppuVar22" identifier + (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier))) )) ;) })) comment (expression_statement "local_15c = (undefined4 *)FUN_0017ebf0(local_14c);" (assignment_expression "local_15c = (undefined4 *)FUN_0017ebf0(local_14c)" identifier = (cast_expression "(undefined4 *)FUN_0017ebf0(local_14c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0017ebf0(local_14c)" identifier (argument_list "(local_14c)" ( identifier ))))) ;) (expression_statement "puVar24 = auStack_1ac;" (assignment_expression "puVar24 = auStack_1ac" identifier = identifier) ;) (expression_statement "puVar26 = auStack_1ac;" (assignment_expression "puVar26 = auStack_1ac" identifier = identifier) ;) (expression_statement "pppppppuVar22 = (uint *******)(local_160 + 0x10);" (assignment_expression "pppppppuVar22 = (uint *******)(local_160 + 0x10)" identifier = (cast_expression "(uint *******)(local_160 + 0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(local_160 + 0x10)" ( (binary_expression "local_160 + 0x10" identifier + number_literal) )))) ;) (expression_statement "puVar8 = local_15c;" (assignment_expression "puVar8 = local_15c" identifier = identifier) ;) (expression_statement "local_134 = pppppppuVar22;" (assignment_expression "local_134 = pppppppuVar22" identifier = identifier) ;) (if_statement "if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }" if (parenthesized_expression "(local_130 != (uint *******)0x0)" ( (binary_expression "local_130 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }" { (do_statement "do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));" do (compound_statement "{\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    }" { (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "puVar8 = puVar8 + 1;" (assignment_expression "puVar8 = puVar8 + 1" identifier = (binary_expression "puVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar8 != (undefined4 *)((int)local_15c + iVar19))" ( (binary_expression "puVar8 != (undefined4 *)((int)local_15c + iVar19)" identifier != (cast_expression "(undefined4 *)((int)local_15c + iVar19)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_15c + iVar19)" ( (binary_expression "(int)local_15c + iVar19" (cast_expression "(int)local_15c" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) )) ;) (if_statement "if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }" if (parenthesized_expression "(local_130 != (uint *******)0x1)" ( (binary_expression "local_130 != (uint *******)0x1" identifier != (cast_expression "(uint *******)0x1" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }" { (expression_statement "pppppppuVar29 = (uint *******)0x1;" (assignment_expression "pppppppuVar29 = (uint *******)0x1" identifier = (cast_expression "(uint *******)0x1" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_140 = (uint *******)0x0;" (assignment_expression "local_140 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_16c = local_120 + -0x3748f;" (assignment_expression "local_16c = local_120 + -0x3748f" identifier = (binary_expression "local_120 + -0x3748f" identifier + number_literal)) ;) (expression_statement "local_154 = param_1 + 0x24;" (assignment_expression "local_154 = param_1 + 0x24" identifier = (binary_expression "param_1 + 0x24" identifier + number_literal)) ;) (do_statement "do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);" do (compound_statement "{\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      }" { (while_statement "while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }" { (if_statement "if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }" if (parenthesized_expression "((char)local_124 != '\0')" ( (binary_expression "(char)local_124 != '\0'" (cast_expression "(char)local_124" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }" { (expression_statement "local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));" (assignment_expression "local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0))" identifier = (cast_expression "(uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0))" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0))" ( (binary_expression "(int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0)" (cast_expression "(int)local_140" ( (type_descriptor "int" primitive_type) ) identifier) + (call_expression "(uint)(((uint)pppppppuVar22[2] & 2) != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(((uint)pppppppuVar22[2] & 2) != 0)" ( (binary_expression "((uint)pppppppuVar22[2] & 2) != 0" (parenthesized_expression "((uint)pppppppuVar22[2] & 2)" ( (binary_expression "(uint)pppppppuVar22[2] & 2" (cast_expression "(uint)pppppppuVar22[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ])) & number_literal) )) != number_literal) )))) )))) ;) })) (expression_statement "ppppppuVar21 = pppppppuVar22[1];" (assignment_expression "ppppppuVar21 = pppppppuVar22[1]" identifier = (subscript_expression "pppppppuVar22[1]" identifier [ number_literal ])) ;) (if_statement "if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;" if (parenthesized_expression "((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4))" ( (binary_expression "(ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)" (parenthesized_expression "(ppppppuVar21 == (uint ******)0x9)" ( (binary_expression "ppppppuVar21 == (uint ******)0x9" identifier == (cast_expression "(uint ******)0x9" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) || (parenthesized_expression "(ppppppuVar21 == (uint ******)0x4)" ( (binary_expression "ppppppuVar21 == (uint ******)0x4" identifier == (cast_expression "(uint ******)0x4" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ))) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);" statement_identifier : (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + 1)" ( (binary_expression "(int)pppppppuVar29 + 1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;)) (expression_statement "pppppppuVar22 = pppppppuVar22 + 0x10;" (assignment_expression "pppppppuVar22 = pppppppuVar22 + 0x10" identifier = (binary_expression "pppppppuVar22 + 0x10" identifier + number_literal)) ;) (if_statement "if (pppppppuVar29 == local_130) goto LAB_000a2028;" if (parenthesized_expression "(pppppppuVar29 == local_130)" ( (binary_expression "pppppppuVar29 == local_130" identifier == identifier) )) (goto_statement "goto LAB_000a2028;" goto statement_identifier ;)) })) (expression_statement "local_12c = (uint *******)pppppppuVar22[0xb];" (assignment_expression "local_12c = (uint *******)pppppppuVar22[0xb]" identifier = (cast_expression "(uint *******)pppppppuVar22[0xb]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[0xb]" identifier [ number_literal ]))) ;) (if_statement "if ((uint *******)0xfeff < local_12c) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }" if (parenthesized_expression "((uint *******)0xfeff < local_12c)" ( (binary_expression "(uint *******)0xfeff < local_12c" (cast_expression "(uint *******)0xfeff" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }" { comment (expression_statement "FUN_0004dee0(local_154);" (call_expression "FUN_0004dee0(local_154)" identifier (argument_list "(local_154)" ( identifier ))) ;) (expression_statement "local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);" (assignment_expression "local_12c = (uint *******)((int)local_12c + (int)param_1[0x29])" identifier = (cast_expression "(uint *******)((int)local_12c + (int)param_1[0x29])" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_12c + (int)param_1[0x29])" ( (binary_expression "(int)local_12c + (int)param_1[0x29]" (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_1[0x29]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x29]" identifier [ number_literal ]))) )))) ;) })) (if_statement "if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }" if (parenthesized_expression "((local_12c == (uint *******)0x0) || (local_130 <= local_12c))" ( (binary_expression "(local_12c == (uint *******)0x0) || (local_130 <= local_12c)" (parenthesized_expression "(local_12c == (uint *******)0x0)" ( (binary_expression "local_12c == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) || (parenthesized_expression "(local_130 <= local_12c)" ( (binary_expression "local_130 <= local_12c" identifier <= identifier) ))) )) (compound_statement "{\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }" { (expression_statement "uVar12 = gettext(local_16c);" (assignment_expression "uVar12 = gettext(local_16c)" identifier = (call_expression "gettext(local_16c)" identifier (argument_list "(local_16c)" ( identifier )))) ;) (expression_statement "FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);" (call_expression "FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c)" identifier (argument_list "(param_1,uVar12,pppppppuVar29,local_12c)" ( identifier , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_000a1f88;" goto statement_identifier ;) })) (expression_statement "piVar11 = local_158 + (int)local_12c;" (assignment_expression "piVar11 = local_158 + (int)local_12c" identifier = (binary_expression "local_158 + (int)local_12c" identifier + (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }" if (parenthesized_expression "(*piVar11 == 0)" ( (binary_expression "*piVar11 == 0" (pointer_expression "*piVar11" * identifier) == number_literal) )) (compound_statement "{\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }" { (expression_statement "*piVar11 = (int)pppppppuVar29;" (assignment_expression "*piVar11 = (int)pppppppuVar29" (pointer_expression "*piVar11" * identifier) = (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_15c[(int)local_12c] = ppppppuVar21;" (assignment_expression "local_15c[(int)local_12c] = ppppppuVar21" (subscript_expression "local_15c[(int)local_12c]" identifier [ (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) (goto_statement "goto LAB_000a1f88;" goto statement_identifier ;) })) (expression_statement "*piVar11 = -1;" (assignment_expression "*piVar11 = -1" (pointer_expression "*piVar11" * identifier) = number_literal) ;) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + 1)" ( (binary_expression "(int)pppppppuVar29 + 1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppuVar22 = pppppppuVar22 + 0x10;" (assignment_expression "pppppppuVar22 = pppppppuVar22 + 0x10" identifier = (binary_expression "pppppppuVar22 + 0x10" identifier + number_literal)) ;) }) while (parenthesized_expression "(pppppppuVar29 != local_130)" ( (binary_expression "pppppppuVar29 != local_130" identifier != identifier) )) ;) (goto_statement "goto LAB_000a2028;" goto statement_identifier ;) })) })) (expression_statement "local_140 = (uint *******)0x0;" (assignment_expression "local_140 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (labeled_statement "LAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }" statement_identifier : (if_statement "if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }" { (expression_statement "pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);" (assignment_expression "pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2)" identifier = (cast_expression "(uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[0xf] - (int)param_1[0xe] >> 2)" ( (binary_expression "(int)param_1[0xf] - (int)param_1[0xe] >> 2" (binary_expression "(int)param_1[0xf] - (int)param_1[0xe]" (cast_expression "(int)param_1[0xf]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xf]" identifier [ number_literal ])) - (cast_expression "(int)param_1[0xe]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xe]" identifier [ number_literal ]))) >> number_literal) )))) ;) (if_statement "if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }" if (parenthesized_expression "(pppppppuVar22 < local_130)" ( (binary_expression "pppppppuVar22 < local_130" identifier < identifier) )) (compound_statement "{\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }" { (expression_statement "FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);" (call_expression "FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22)" identifier (argument_list "(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22)" ( (binary_expression "param_1 + 0xe" identifier + number_literal) , (binary_expression "(int)local_130 - (int)pppppppuVar22" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) }) (else_clause "else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }" else (if_statement "if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }" if (parenthesized_expression "((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21))" ( (binary_expression "(local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)" (parenthesized_expression "(local_130 < pppppppuVar22)" ( (binary_expression "local_130 < pppppppuVar22" identifier < identifier) )) && (parenthesized_expression "(ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)" ( (comma_expression "ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21" (assignment_expression "ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c)" identifier = (cast_expression "(uint ******)((int)param_1[0xe] + local_14c)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)param_1[0xe] + local_14c)" ( (binary_expression "(int)param_1[0xe] + local_14c" (cast_expression "(int)param_1[0xe]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xe]" identifier [ number_literal ])) + identifier) )))) , (binary_expression "param_1[0xf] != ppppppuVar21" (subscript_expression "param_1[0xf]" identifier [ number_literal ]) != identifier)) ))) )) (compound_statement "{\n      param_1[0xf] = ppppppuVar21;\n    }" { (expression_statement "param_1[0xf] = ppppppuVar21;" (assignment_expression "param_1[0xf] = ppppppuVar21" (subscript_expression "param_1[0xf]" identifier [ number_literal ]) = identifier) ;) })))) (expression_statement "pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);" (assignment_expression "pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3)" identifier = (cast_expression "(uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[0x22] - (int)param_1[0x21] >> 3)" ( (binary_expression "(int)param_1[0x22] - (int)param_1[0x21] >> 3" (binary_expression "(int)param_1[0x22] - (int)param_1[0x21]" (cast_expression "(int)param_1[0x22]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x22]" identifier [ number_literal ])) - (cast_expression "(int)param_1[0x21]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x21]" identifier [ number_literal ]))) >> number_literal) )))) ;) (if_statement "if (pppppppuVar22 < local_130) {\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }" if (parenthesized_expression "(pppppppuVar22 < local_130)" ( (binary_expression "pppppppuVar22 < local_130" identifier < identifier) )) (compound_statement "{\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }" { comment (expression_statement "FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);" (call_expression "FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22)" identifier (argument_list "(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22)" ( (binary_expression "param_1 + 0x21" identifier + number_literal) , (binary_expression "(int)local_130 - (int)pppppppuVar22" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) }) (else_clause "else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }" else (if_statement "if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }" if (parenthesized_expression "((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21))" ( (binary_expression "(local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)" (parenthesized_expression "(local_130 < pppppppuVar22)" ( (binary_expression "local_130 < pppppppuVar22" identifier < identifier) )) && (parenthesized_expression "(ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)" ( (comma_expression "ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21" (assignment_expression "ppppppuVar21 = param_1[0x21] + (int)local_130 * 2" identifier = (binary_expression "param_1[0x21] + (int)local_130 * 2" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) + (binary_expression "(int)local_130 * 2" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) , (binary_expression "param_1[0x22] != ppppppuVar21" (subscript_expression "param_1[0x22]" identifier [ number_literal ]) != identifier)) ))) )) (compound_statement "{\n      param_1[0x22] = ppppppuVar21;\n    }" { (expression_statement "param_1[0x22] = ppppppuVar21;" (assignment_expression "param_1[0x22] = ppppppuVar21" (subscript_expression "param_1[0x22]" identifier [ number_literal ]) = identifier) ;) })))) }))) (if_statement "if (param_1[7] == (uint ******)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */\n    FUN_000917c0();\n  }" if (parenthesized_expression "(param_1[7] == (uint ******)0x0)" ( (binary_expression "param_1[7] == (uint ******)0x0" (subscript_expression "param_1[7]" identifier [ number_literal ]) == (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */\n    FUN_000917c0();\n  }" { comment comment (expression_statement "FUN_000917c0();" (call_expression "FUN_000917c0()" identifier (argument_list "()" ( ))) ;) })) comment (expression_statement "local_137 = FUN_0005cf90(param_1[7]);" (assignment_expression "local_137 = FUN_0005cf90(param_1[7])" identifier = (call_expression "FUN_0005cf90(param_1[7])" identifier (argument_list "(param_1[7])" ( (subscript_expression "param_1[7]" identifier [ number_literal ]) )))) ;) (if_statement "if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */\n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }" if (parenthesized_expression "(local_137 == 0)" ( (binary_expression "local_137 == 0" identifier == number_literal) )) (compound_statement "{\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */\n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }" { (if_statement "if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }" if (parenthesized_expression "(local_140 != (uint *******)0x0)" ( (binary_expression "local_140 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }" { comment comment (expression_statement "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);" (call_expression "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" identifier (argument_list "(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" ( (binary_expression "local_120 + -0x385a4" identifier + number_literal) , number_literal , (binary_expression "local_120 + -0x371c1" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "ppppuVar14 = (*local_13c)[2][0x164f];" (assignment_expression "ppppuVar14 = (*local_13c)[2][0x164f]" identifier = (subscript_expression "(*local_13c)[2][0x164f]" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) [ number_literal ])) ;) (expression_statement "local_ec = param_1;" (assignment_expression "local_ec = param_1" identifier = identifier) ;) (expression_statement "pppuVar4 = ppppuVar14[8];" (assignment_expression "pppuVar4 = ppppuVar14[8]" identifier = (subscript_expression "ppppuVar14[8]" identifier [ number_literal ])) ;) (if_statement "if (pppuVar4 == ppppuVar14[9]) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }" if (parenthesized_expression "(pppuVar4 == ppppuVar14[9])" ( (binary_expression "pppuVar4 == ppppuVar14[9]" identifier == (subscript_expression "ppppuVar14[9]" identifier [ number_literal ])) )) (compound_statement "{\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }" { comment (expression_statement "FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);" (call_expression "FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec)" identifier (argument_list "(ppppuVar14 + 7,pppuVar4,&local_ec)" ( (binary_expression "ppppuVar14 + 7" identifier + number_literal) , identifier , (pointer_expression "&local_ec" & identifier) ))) ;) }) (else_clause "else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }" else (compound_statement "{\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }" { (expression_statement "*pppuVar4 = (uint **)param_1;" (assignment_expression "*pppuVar4 = (uint **)param_1" (pointer_expression "*pppuVar4" * identifier) = (cast_expression "(uint **)param_1" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "ppppuVar14[8] = pppuVar4 + 1;" (assignment_expression "ppppuVar14[8] = pppuVar4 + 1" (subscript_expression "ppppuVar14[8]" identifier [ number_literal ]) = (binary_expression "pppuVar4 + 1" identifier + number_literal)) ;) }))) (if_statement "if ((uint *******)0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }" if (parenthesized_expression "((uint *******)0x28f5c28 < local_140)" ( (binary_expression "(uint *******)0x28f5c28 < local_140" (cast_expression "(uint *******)0x28f5c28" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }" { comment comment (expression_statement "FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));" (call_expression "FUN_001c6190((byte *)((int)local_120 + -0xe7a7d))" identifier (argument_list "((byte *)((int)local_120 + -0xe7a7d))" ( (cast_expression "(byte *)((int)local_120 + -0xe7a7d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xe7a7d)" ( (binary_expression "(int)local_120 + -0xe7a7d" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) ))) ;) })) (expression_statement "ppppppuVar21 = param_1[0x48];" (assignment_expression "ppppppuVar21 = param_1[0x48]" identifier = (subscript_expression "param_1[0x48]" identifier [ number_literal ])) ;) (expression_statement "local_12c = (uint *******)param_1[0x4a];" (assignment_expression "local_12c = (uint *******)param_1[0x4a]" identifier = (cast_expression "(uint *******)param_1[0x4a]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x4a]" identifier [ number_literal ]))) ;) (if_statement "if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }" if (parenthesized_expression "((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140)" ( (binary_expression "(uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140" (cast_expression "(uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7)" ( (binary_expression "((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7" (parenthesized_expression "((int)local_12c - (int)ppppppuVar21 >> 2)" ( (binary_expression "(int)local_12c - (int)ppppppuVar21 >> 2" (binary_expression "(int)local_12c - (int)ppppppuVar21" (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal) )) * number_literal) ))) < identifier) )) (compound_statement "{\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }" { (expression_statement "ppppppuVar17 = param_1[0x49];" (assignment_expression "ppppppuVar17 = param_1[0x49]" identifier = (subscript_expression "param_1[0x49]" identifier [ number_literal ])) ;) (expression_statement "local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);" (assignment_expression "local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21)" identifier = (cast_expression "(uint *******)((int)ppppppuVar17 - (int)ppppppuVar21)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppuVar17 - (int)ppppppuVar21)" ( (binary_expression "(int)ppppppuVar17 - (int)ppppppuVar21" (cast_expression "(int)ppppppuVar17" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_140 = (uint *******)((int)local_140 * 100);" (assignment_expression "local_140 = (uint *******)((int)local_140 * 100)" identifier = (cast_expression "(uint *******)((int)local_140 * 100)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_140 * 100)" ( (binary_expression "(int)local_140 * 100" (cast_expression "(int)local_140" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) comment (expression_statement "local_12c = (uint *******)FUN_0017ebf0(local_140);" (assignment_expression "local_12c = (uint *******)FUN_0017ebf0(local_140)" identifier = (cast_expression "(uint *******)FUN_0017ebf0(local_140)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_0017ebf0(local_140)" identifier (argument_list "(local_140)" ( identifier ))))) ;) (if_statement "if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }" if (parenthesized_expression "(ppppppuVar21 != ppppppuVar17)" ( (binary_expression "ppppppuVar21 != ppppppuVar17" identifier != identifier) )) (compound_statement "{\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }" { (expression_statement "ppppppuVar13 = ppppppuVar21 + 2;" (assignment_expression "ppppppuVar13 = ppppppuVar21 + 2" identifier = (binary_expression "ppppppuVar21 + 2" identifier + number_literal)) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (do_statement "do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);" do (compound_statement "{\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          }" { (expression_statement "*pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);" (assignment_expression "*pppppppuVar22 = (uint ******)(pppppppuVar22 + 2)" (pointer_expression "*pppppppuVar22" * identifier) = (cast_expression "(uint ******)(pppppppuVar22 + 2)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(pppppppuVar22 + 2)" ( (binary_expression "pppppppuVar22 + 2" identifier + number_literal) )))) ;) (if_statement "if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }" if (parenthesized_expression "((uint ******)ppppppuVar13[-2] == ppppppuVar13)" ( (binary_expression "(uint ******)ppppppuVar13[-2] == ppppppuVar13" (cast_expression "(uint ******)ppppppuVar13[-2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[-2]" identifier [ number_literal ])) == identifier) )) (compound_statement "{\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }" { (expression_statement "pppppppuVar22[2] = (uint ******)*ppppppuVar13;" (assignment_expression "pppppppuVar22[2] = (uint ******)*ppppppuVar13" (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ]) = (cast_expression "(uint ******)*ppppppuVar13" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar13" * identifier))) ;) (expression_statement "pppppppuVar22[3] = (uint ******)ppppppuVar13[1];" (assignment_expression "pppppppuVar22[3] = (uint ******)ppppppuVar13[1]" (subscript_expression "pppppppuVar22[3]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[1]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[1]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[4] = (uint ******)ppppppuVar13[2];" (assignment_expression "pppppppuVar22[4] = (uint ******)ppppppuVar13[2]" (subscript_expression "pppppppuVar22[4]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[2]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[5] = (uint ******)ppppppuVar13[3];" (assignment_expression "pppppppuVar22[5] = (uint ******)ppppppuVar13[3]" (subscript_expression "pppppppuVar22[5]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[3]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[3]" identifier [ number_literal ]))) ;) }) (else_clause "else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }" else (compound_statement "{\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }" { (expression_statement "*pppppppuVar22 = (uint ******)ppppppuVar13[-2];" (assignment_expression "*pppppppuVar22 = (uint ******)ppppppuVar13[-2]" (pointer_expression "*pppppppuVar22" * identifier) = (cast_expression "(uint ******)ppppppuVar13[-2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[-2]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[2] = (uint ******)*ppppppuVar13;" (assignment_expression "pppppppuVar22[2] = (uint ******)*ppppppuVar13" (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ]) = (cast_expression "(uint ******)*ppppppuVar13" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar13" * identifier))) ;) }))) (expression_statement "pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];" (assignment_expression "pppppppuVar22[1] = (uint ******)ppppppuVar13[-1]" (subscript_expression "pppppppuVar22[1]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[-1]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[-1]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar13[-2] = (uint *****)ppppppuVar13;" (assignment_expression "ppppppuVar13[-2] = (uint *****)ppppppuVar13" (subscript_expression "ppppppuVar13[-2]" identifier [ number_literal ]) = (cast_expression "(uint *****)ppppppuVar13" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "ppppppuVar20 = ppppppuVar13 + 0x19;" (assignment_expression "ppppppuVar20 = ppppppuVar13 + 0x19" identifier = (binary_expression "ppppppuVar13 + 0x19" identifier + number_literal)) ;) (expression_statement "ppppppuVar13[-1] = (uint *****)0x0;" (assignment_expression "ppppppuVar13[-1] = (uint *****)0x0" (subscript_expression "ppppppuVar13[-1]" identifier [ number_literal ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "*(undefined1 *)ppppppuVar13 = 0;" (assignment_expression "*(undefined1 *)ppppppuVar13 = 0" (pointer_expression "*(undefined1 *)ppppppuVar13" * (cast_expression "(undefined1 *)ppppppuVar13" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "pppppppuVar22[6] = (uint ******)ppppppuVar13[4];" (assignment_expression "pppppppuVar22[6] = (uint ******)ppppppuVar13[4]" (subscript_expression "pppppppuVar22[6]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[4]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[4]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[7] = (uint ******)ppppppuVar13[5];" (assignment_expression "pppppppuVar22[7] = (uint ******)ppppppuVar13[5]" (subscript_expression "pppppppuVar22[7]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[5]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[5]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[8] = (uint ******)ppppppuVar13[6];" (assignment_expression "pppppppuVar22[8] = (uint ******)ppppppuVar13[6]" (subscript_expression "pppppppuVar22[8]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[6]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[6]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[9] = (uint ******)ppppppuVar13[7];" (assignment_expression "pppppppuVar22[9] = (uint ******)ppppppuVar13[7]" (subscript_expression "pppppppuVar22[9]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[7]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[10] = (uint ******)ppppppuVar13[8];" (assignment_expression "pppppppuVar22[10] = (uint ******)ppppppuVar13[8]" (subscript_expression "pppppppuVar22[10]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[8]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[8]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];" (assignment_expression "pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9]" (subscript_expression "pppppppuVar22[0xb]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[9]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[9]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];" (assignment_expression "pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10]" (subscript_expression "pppppppuVar22[0xc]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[10]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[10]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];" (assignment_expression "pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb]" (subscript_expression "pppppppuVar22[0xd]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xb]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xb]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];" (assignment_expression "pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc]" (subscript_expression "pppppppuVar22[0xe]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xc]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xc]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];" (assignment_expression "pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd]" (subscript_expression "pppppppuVar22[0xf]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xd]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xd]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];" (assignment_expression "pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe]" (subscript_expression "pppppppuVar22[0x10]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xe]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xe]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];" (assignment_expression "pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf]" (subscript_expression "pppppppuVar22[0x11]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xf]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xf]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];" (assignment_expression "pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10]" (subscript_expression "pppppppuVar22[0x12]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x10]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x10]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];" (assignment_expression "pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11]" (subscript_expression "pppppppuVar22[0x13]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x11]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x11]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];" (assignment_expression "pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12]" (subscript_expression "pppppppuVar22[0x14]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x12]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x12]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];" (assignment_expression "pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13]" (subscript_expression "pppppppuVar22[0x15]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x13]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x13]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];" (assignment_expression "pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14]" (subscript_expression "pppppppuVar22[0x16]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x14]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x14]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];" (assignment_expression "pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15]" (subscript_expression "pppppppuVar22[0x17]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x15]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x15]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];" (assignment_expression "pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16]" (subscript_expression "pppppppuVar22[0x18]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x16]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x16]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar13 = ppppppuVar20;" (assignment_expression "ppppppuVar13 = ppppppuVar20" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar22 + 0x19;" (assignment_expression "pppppppuVar22 = pppppppuVar22 + 0x19" identifier = (binary_expression "pppppppuVar22 + 0x19" identifier + number_literal)) ;) }) while (parenthesized_expression "(ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20)" ( (binary_expression "ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20" (binary_expression "ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b" (binary_expression "ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19" identifier + (binary_expression "(((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19" (parenthesized_expression "(((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff)" ( (binary_expression "((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff" (binary_expression "((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29" (parenthesized_expression "((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2)" ( (binary_expression "(uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2" (call_expression "(uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)ppppppuVar17 + (-100 - (int)ppppppuVar21))" ( (binary_expression "(int)ppppppuVar17 + (-100 - (int)ppppppuVar21)" (cast_expression "(int)ppppppuVar17" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-100 - (int)ppppppuVar21)" ( (binary_expression "-100 - (int)ppppppuVar21" number_literal - (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))) >> number_literal) )) * number_literal) & number_literal) )) * number_literal)) + number_literal) != identifier) )) ;) })) (expression_statement "ppppppuVar21 = param_1[0x49];" (assignment_expression "ppppppuVar21 = param_1[0x49]" identifier = (subscript_expression "param_1[0x49]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar17 = param_1[0x48];" (assignment_expression "ppppppuVar17 = param_1[0x48]" identifier = (subscript_expression "param_1[0x48]" identifier [ number_literal ])) ;) (if_statement "if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }" if (parenthesized_expression "(ppppppuVar21 != ppppppuVar17)" ( (binary_expression "ppppppuVar21 != ppppppuVar17" identifier != identifier) )) (compound_statement "{\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }" { (do_statement "do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);" do (compound_statement "{\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          }" { (if_statement "if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }" if (parenthesized_expression "((uint ******)*ppppppuVar17 != ppppppuVar17 + 2)" ( (binary_expression "(uint ******)*ppppppuVar17 != ppppppuVar17 + 2" (cast_expression "(uint ******)*ppppppuVar17" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar17" * identifier)) != (binary_expression "ppppppuVar17 + 2" identifier + number_literal)) )) (compound_statement "{\n              FUN_001807a0(*ppppppuVar17);\n            }" { (expression_statement "FUN_001807a0(*ppppppuVar17);" (call_expression "FUN_001807a0(*ppppppuVar17)" identifier (argument_list "(*ppppppuVar17)" ( (pointer_expression "*ppppppuVar17" * identifier) ))) ;) })) (expression_statement "ppppppuVar17 = ppppppuVar17 + 0x19;" (assignment_expression "ppppppuVar17 = ppppppuVar17 + 0x19" identifier = (binary_expression "ppppppuVar17 + 0x19" identifier + number_literal)) ;) }) while (parenthesized_expression "(ppppppuVar21 != ppppppuVar17)" ( (binary_expression "ppppppuVar21 != ppppppuVar17" identifier != identifier) )) ;) (expression_statement "ppppppuVar17 = param_1[0x48];" (assignment_expression "ppppppuVar17 = param_1[0x48]" identifier = (subscript_expression "param_1[0x48]" identifier [ number_literal ])) ;) })) (if_statement "if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }" if (parenthesized_expression "(ppppppuVar17 != (uint ******)0x0)" ( (binary_expression "ppppppuVar17 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          FUN_001807a0(ppppppuVar17);\n        }" { (expression_statement "FUN_001807a0(ppppppuVar17);" (call_expression "FUN_001807a0(ppppppuVar17)" identifier (argument_list "(ppppppuVar17)" ( identifier ))) ;) })) (expression_statement "param_1[0x48] = (uint ******)local_12c;" (assignment_expression "param_1[0x48] = (uint ******)local_12c" (subscript_expression "param_1[0x48]" identifier [ number_literal ]) = (cast_expression "(uint ******)local_12c" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);" (assignment_expression "param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c)" (subscript_expression "param_1[0x49]" identifier [ number_literal ]) = (cast_expression "(uint ******)((int)local_124 + (int)local_12c)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_124 + (int)local_12c)" ( (binary_expression "(int)local_124 + (int)local_12c" (cast_expression "(int)local_124" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);" (assignment_expression "param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c)" (subscript_expression "param_1[0x4a]" identifier [ number_literal ]) = (cast_expression "(uint ******)((int)local_140 + (int)local_12c)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_140 + (int)local_12c)" ( (binary_expression "(int)local_140 + (int)local_12c" (cast_expression "(int)local_140" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) })) (expression_statement "*(byte *)((int)param_1 + 0x11d) = 1;" (assignment_expression "*(byte *)((int)param_1 + 0x11d) = 1" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" * (cast_expression "(byte *)((int)param_1 + 0x11d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x11d)" ( (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) })) (expression_statement "pppppppuVar29 = local_130;" (assignment_expression "pppppppuVar29 = local_130" identifier = identifier) ;) (expression_statement "local_b0 = (void *)0x0;" (assignment_expression "local_b0 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "local_a8 = (void *)0x0;" (assignment_expression "local_a8 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_a4 = 0;" (assignment_expression "local_a4 = 0" identifier = number_literal) ;) (expression_statement "local_a0 = (byte *)0x0;" (assignment_expression "local_a0 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);" (assignment_expression "pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4)" identifier = (cast_expression "(uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(((uint)((int)local_130 + 0x1fU) >> 5) * 4)" ( (binary_expression "((uint)((int)local_130 + 0x1fU) >> 5) * 4" (parenthesized_expression "((uint)((int)local_130 + 0x1fU) >> 5)" ( (binary_expression "(uint)((int)local_130 + 0x1fU) >> 5" (call_expression "(uint)((int)local_130 + 0x1fU)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)local_130 + 0x1fU)" ( (binary_expression "(int)local_130 + 0x1fU" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) >> number_literal) )) * number_literal) )))) ;) comment (expression_statement "local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);" (assignment_expression "local_b0 = (void *)FUN_0017ebf0(pppppppuVar27)" identifier = (cast_expression "(void *)FUN_0017ebf0(pppppppuVar27)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0017ebf0(pppppppuVar27)" identifier (argument_list "(pppppppuVar27)" ( identifier ))))) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);" (assignment_expression "local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27)" identifier = (cast_expression "(byte *)((int)local_b0 + (int)pppppppuVar27)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + (int)pppppppuVar27)" ( (binary_expression "(int)local_b0 + (int)pppppppuVar27" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_a4 = (uint)pppppppuVar29 & 0x1f;" (assignment_expression "local_a4 = (uint)pppppppuVar29 & 0x1f" identifier = (binary_expression "(uint)pppppppuVar29 & 0x1f" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);" (assignment_expression "local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4)" identifier = (cast_expression "(void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((int)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((int)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((int)pppppppuVar29 >> 5)" ( (binary_expression "(int)pppppppuVar29 >> 5" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) * number_literal)) )))) ;) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "memset(local_b0,0,(size_t)pppppppuVar27);" (call_expression "memset(local_b0,0,(size_t)pppppppuVar27)" identifier (argument_list "(local_b0,0,(size_t)pppppppuVar27)" ( identifier , number_literal , (cast_expression "(size_t)pppppppuVar27" ( (type_descriptor "size_t" primitive_type) ) identifier) ))) ;) (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" identifier = (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }" { comment comment (expression_statement "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);" (call_expression "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" identifier (argument_list "(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" ( (binary_expression "local_120 + -0x385a4" identifier + number_literal) , number_literal , (binary_expression "local_120 + -0x371c1" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);" (assignment_expression "bVar3 = *(byte *)((int)pppppuVar15 + 0x318d)" identifier = (pointer_expression "*(byte *)((int)pppppuVar15 + 0x318d)" * (cast_expression "(byte *)((int)pppppuVar15 + 0x318d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x318d)" ( (binary_expression "(int)pppppuVar15 + 0x318d" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "pppppppuVar29 = (uint *******)(uint)bVar3;" (assignment_expression "pppppppuVar29 = (uint *******)(uint)bVar3" identifier = (cast_expression "(uint *******)(uint)bVar3" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (cast_expression "(uint)bVar3" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);" (assignment_expression "local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3)" identifier = (cast_expression "(uint *******)CONCAT31(local_140._1_3_,bVar3)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "CONCAT31(local_140._1_3_,bVar3)" identifier (argument_list "(local_140._1_3_,bVar3)" ( (field_expression "local_140._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }" if (parenthesized_expression "(bVar3 == 0)" ( (binary_expression "bVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }" { (expression_statement "bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);" (assignment_expression "bVar3 = *(byte *)((int)pppppuVar15 + 0x3095)" identifier = (pointer_expression "*(byte *)((int)pppppuVar15 + 0x3095)" * (cast_expression "(byte *)((int)pppppuVar15 + 0x3095)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x3095)" ( (binary_expression "(int)pppppuVar15 + 0x3095" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) })) (expression_statement "local_14c = CONCAT31(local_14c._1_3_,bVar3);" (assignment_expression "local_14c = CONCAT31(local_14c._1_3_,bVar3)" identifier = (call_expression "CONCAT31(local_14c._1_3_,bVar3)" identifier (argument_list "(local_14c._1_3_,bVar3)" ( (field_expression "local_14c._1_3_" identifier . field_identifier) , identifier )))) ;) (expression_statement "local_e0 = (uint *******)0x0;" (assignment_expression "local_e0 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_dc = (uint *******)0x0;" (assignment_expression "local_dc = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_d8 = (uint *******)0x0;" (assignment_expression "local_d8 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_d4 = (int *)0x0;" (assignment_expression "local_d4 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_d0 = (int *)0x0;" (assignment_expression "local_d0 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (int *)0x0;" (assignment_expression "local_cc = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_c8 = (int *)0x0;" (assignment_expression "local_c8 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_c4 = (int *)0x0;" (assignment_expression "local_c4 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_c0 = (int *)0x0;" (assignment_expression "local_c0 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_bc = (int *)0x0;" (assignment_expression "local_bc = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b8 = (int *)0x0;" (assignment_expression "local_b8 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b4 = (int *)0x0;" (assignment_expression "local_b4 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_f0 = (uint *******)0x1;" (assignment_expression "local_f0 = (uint *******)0x1" identifier = (cast_expression "(uint *******)0x1" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }" if (parenthesized_expression "(local_130 < (uint *******)0x2)" ( (binary_expression "local_130 < (uint *******)0x2" identifier < (cast_expression "(uint *******)0x2" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }" { (expression_statement "local_16c = (uint *******)0x0;" (assignment_expression "local_16c = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_168 = 0;" (assignment_expression "local_168 = 0" identifier = number_literal) ;) (expression_statement "pppppppuVar28 = local_134;" (assignment_expression "pppppppuVar28 = local_134" identifier = identifier) ;) (labeled_statement "LAB_000a2740:\n      local_134 = pppppppuVar28;" statement_identifier : (expression_statement "local_134 = pppppppuVar28;" (assignment_expression "local_134 = pppppppuVar28" identifier = identifier) ;)) (if_statement "if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }" { (expression_statement "*(uint ********)(puVar24 + -0xc) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x10) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x10) = param_3" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa275f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa275f" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0007bc30();" (call_expression "FUN_0007bc30()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar10 = (uint)local_137;" (assignment_expression "uVar10 = (uint)local_137" identifier = (cast_expression "(uint)local_137" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar24 + -0x14) = local_168;" (assignment_expression "*(uint *)(puVar24 + -0x14) = local_168" (pointer_expression "*(uint *)(puVar24 + -0x14)" * (cast_expression "(uint *)(puVar24 + -0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x18) = local_16c;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_16c" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar24 + -0x1c) = uVar10;" (assignment_expression "*(uint *)(puVar24 + -0x1c) = uVar10" (pointer_expression "*(uint *)(puVar24 + -0x1c)" * (cast_expression "(uint *)(puVar24 + -0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x20) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x20) = param_3" (pointer_expression "*(int *)(puVar24 + -0x20)" * (cast_expression "(int *)(puVar24 + -0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x24) = 0xa277f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x24) = 0xa277f" (pointer_expression "*(undefined4 *)(puVar24 + -0x24)" * (cast_expression "(undefined4 *)(puVar24 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0007bb30();" (call_expression "FUN_0007bb30()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_02;" (assignment_expression "pppppppuVar29 = extraout_ECX_02" identifier = identifier) ;) })) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (if_statement "if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_136 == '\0')" ( (binary_expression "local_136 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }" { (if_statement "if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }" if (parenthesized_expression "(local_d0 != local_d4)" ( (binary_expression "local_d0 != local_d4" identifier != identifier) )) (compound_statement "{\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }" { (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" identifier = (cast_expression "(uint *******)&local_84" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_84" & identifier))) ;) (expression_statement "piVar11 = local_d4;" (assignment_expression "piVar11 = local_d4" identifier = identifier) ;) (do_statement "do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);" do (compound_statement "{\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          }" { (expression_statement "iVar19 = *piVar11;" (assignment_expression "iVar19 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (subscript_expression "local_15c[iVar19]" identifier [ identifier ])) ;) (expression_statement "pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);" (assignment_expression "pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10)" identifier = (cast_expression "(uint *******)(local_160 + iVar19 * 0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(local_160 + iVar19 * 0x10)" ( (binary_expression "local_160 + iVar19 * 0x10" identifier + (binary_expression "iVar19 * 0x10" identifier * number_literal)) )))) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = local_158[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_158[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x18) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x18) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x18)" * (cast_expression "(int *)(puVar24 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x1c) = local_188;" (assignment_expression "*(uint *******)(puVar24 + -0x1c) = local_188" (pointer_expression "*(uint *******)(puVar24 + -0x1c)" * (cast_expression "(uint *******)(puVar24 + -0x1c)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x20) = local_180;" (assignment_expression "*(uint *******)(puVar24 + -0x20) = local_180" (pointer_expression "*(uint *******)(puVar24 + -0x20)" * (cast_expression "(uint *******)(puVar24 + -0x20)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x24) = local_17c;" (assignment_expression "*(uint ********)(puVar24 + -0x24) = local_17c" (pointer_expression "*(uint ********)(puVar24 + -0x24)" * (cast_expression "(uint ********)(puVar24 + -0x24)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x28) = local_164;" (assignment_expression "*(uint *******)(puVar24 + -0x28) = local_164" (pointer_expression "*(uint *******)(puVar24 + -0x28)" * (cast_expression "(uint *******)(puVar24 + -0x28)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x28)" ( (binary_expression "puVar24 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x2c) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x2c) = param_3" (pointer_expression "*(int *)(puVar24 + -0x2c)" * (cast_expression "(int *)(puVar24 + -0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x2c)" ( (binary_expression "puVar24 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x30) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x30) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x30)" * (cast_expression "(uint ********)(puVar24 + -0x30)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x30)" ( (binary_expression "puVar24 + -0x30" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "local_84 = pppppppuVar22;" (assignment_expression "local_84 = pppppppuVar22" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa374f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa374f" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" * (cast_expression "(undefined4 *)(puVar24 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x34)" ( (binary_expression "puVar24 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00096690();" (call_expression "FUN_00096690()" identifier (argument_list "()" ( ))) ;) (expression_statement "piVar11 = piVar11 + 1;" (assignment_expression "piVar11 = piVar11 + 1" identifier = (binary_expression "piVar11 + 1" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_13;" (assignment_expression "pppppppuVar29 = extraout_ECX_13" identifier = identifier) ;) }) while (parenthesized_expression "(local_d0 != piVar11)" ( (binary_expression "local_d0 != piVar11" identifier != identifier) )) ;) })) }) (else_clause "else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" else (if_statement "if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_d0 != local_d4)" ( (binary_expression "local_d0 != local_d4" identifier != identifier) )) (compound_statement "{\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x751;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x751" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x375d2" identifier + number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa44e7;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa44e7" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })))) (if_statement "if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }" if (parenthesized_expression "((char)local_14c != '\0')" ( (binary_expression "(char)local_14c != '\0'" (cast_expression "(char)local_14c" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }" { (expression_statement "ppppppuVar21 = param_1[10];" (assignment_expression "ppppppuVar21 = param_1[10]" identifier = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0xc;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0xc" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa41d3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa41d3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppppppuVar17 = (uint ******)FUN_0017ebf0();" (assignment_expression "ppppppuVar17 = (uint ******)FUN_0017ebf0()" identifier = (cast_expression "(uint ******)FUN_0017ebf0()" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "FUN_0017ebf0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*ppppppuVar17 = (uint *****)0x0;" (assignment_expression "*ppppppuVar17 = (uint *****)0x0" (pointer_expression "*ppppppuVar17" * identifier) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar17[1] = (uint *****)0x0;" (assignment_expression "ppppppuVar17[1] = (uint *****)0x0" (subscript_expression "ppppppuVar17[1]" identifier [ number_literal ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar17[2] = (uint *****)0x0;" (assignment_expression "ppppppuVar17[2] = (uint *****)0x0" (subscript_expression "ppppppuVar17[2]" identifier [ number_literal ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (if_statement "if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }" if (parenthesized_expression "(ppppppuVar21 == (uint ******)0x0)" ( (binary_expression "ppppppuVar21 == (uint ******)0x0" identifier == (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }" { (expression_statement "pppppuVar15 = (uint *****)0x0;" (assignment_expression "pppppuVar15 = (uint *****)0x0" identifier = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_27;" (assignment_expression "pppppppuVar29 = extraout_ECX_27" identifier = identifier) ;) }) (else_clause "else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }" else (compound_statement "{\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }" { (if_statement "if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }" if (parenthesized_expression "((uint ******)0x3fffffff < ppppppuVar21)" ( (binary_expression "(uint ******)0x3fffffff < ppppppuVar21" (cast_expression "(uint ******)0x3fffffff" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal) < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }" { comment comment (expression_statement "*(undefined1 **)(puVar24 + -4) = &LAB_000a4530;" (assignment_expression "*(undefined1 **)(puVar24 + -4) = &LAB_000a4530" (pointer_expression "*(undefined1 **)(puVar24 + -4)" * (cast_expression "(undefined1 **)(puVar24 + -4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = (pointer_expression "&LAB_000a4530" & identifier)) ;) (expression_statement "FUN_001c5fe0();" (call_expression "FUN_001c5fe0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;" (assignment_expression "*(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "(int)ppppppuVar21 * 4" (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4212;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4212" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pppppuVar18 = (uint *****)FUN_0017ebf0();" (assignment_expression "pppppuVar18 = (uint *****)FUN_0017ebf0()" identifier = (cast_expression "(uint *****)FUN_0017ebf0()" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (call_expression "FUN_0017ebf0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;" (assignment_expression "pppppuVar15 = pppppuVar18 + (int)ppppppuVar21" identifier = (binary_expression "pppppuVar18 + (int)ppppppuVar21" identifier + (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "*ppppppuVar17 = pppppuVar18;" (assignment_expression "*ppppppuVar17 = pppppuVar18" (pointer_expression "*ppppppuVar17" * identifier) = identifier) ;) (expression_statement "ppppppuVar17[2] = pppppuVar15;" (assignment_expression "ppppppuVar17[2] = pppppuVar15" (subscript_expression "ppppppuVar17[2]" identifier [ number_literal ]) = identifier) ;) (do_statement "do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);" do (compound_statement "{\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          }" { (expression_statement "*pppppuVar18 = (uint ****)0x0;" (assignment_expression "*pppppuVar18 = (uint ****)0x0" (pointer_expression "*pppppuVar18" * identifier) = (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "pppppuVar18 = pppppuVar18 + 1;" (assignment_expression "pppppuVar18 = pppppuVar18 + 1" identifier = (binary_expression "pppppuVar18 + 1" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_28;" (assignment_expression "pppppppuVar29 = extraout_ECX_28" identifier = identifier) ;) }) while (parenthesized_expression "(pppppuVar15 != pppppuVar18)" ( (binary_expression "pppppuVar15 != pppppuVar18" identifier != identifier) )) ;) }))) (expression_statement "ppppppuVar17[1] = pppppuVar15;" (assignment_expression "ppppppuVar17[1] = pppppuVar15" (subscript_expression "ppppppuVar17[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "param_1[0x11] = ppppppuVar17;" (assignment_expression "param_1[0x11] = ppppppuVar17" (subscript_expression "param_1[0x11]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (if_statement "if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_138 == '\0')" ( (binary_expression "local_138 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }" { (if_statement "if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }" if (parenthesized_expression "(local_e0 != local_dc)" ( (binary_expression "local_e0 != local_dc" identifier != identifier) )) (compound_statement "{\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }" { (expression_statement "local_12c = local_e0;" (assignment_expression "local_12c = local_e0" identifier = identifier) ;) (expression_statement "local_134 = param_1 + 0x24;" (assignment_expression "local_134 = param_1 + 0x24" identifier = (binary_expression "param_1 + 0x24" identifier + number_literal)) ;) (expression_statement "local_13c = (uint *******)&local_9c;" (assignment_expression "local_13c = (uint *******)&local_9c" identifier = (cast_expression "(uint *******)&local_9c" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_9c" & identifier))) ;) (do_statement "do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);" do (compound_statement "{\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          }" { (expression_statement "pppppppuVar22 = (uint *******)*local_12c;" (assignment_expression "pppppppuVar22 = (uint *******)*local_12c" identifier = (cast_expression "(uint *******)*local_12c" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*local_12c" * identifier))) ;) (expression_statement "pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);" (assignment_expression "pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10)" identifier = (cast_expression "(uint *******)(local_160 + (int)pppppppuVar22 * 0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(local_160 + (int)pppppppuVar22 * 0x10)" ( (binary_expression "local_160 + (int)pppppppuVar22 * 0x10" identifier + (binary_expression "(int)pppppppuVar22 * 0x10" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "pppppppuVar27 = (uint *******)pppppppuVar28[0xb];" (assignment_expression "pppppppuVar27 = (uint *******)pppppppuVar28[0xb]" identifier = (cast_expression "(uint *******)pppppppuVar28[0xb]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar28[0xb]" identifier [ number_literal ]))) ;) (expression_statement "local_9c = pppppppuVar28;" (assignment_expression "local_9c = pppppppuVar28" identifier = identifier) ;) (if_statement "if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }" if (parenthesized_expression "((uint *******)0xfeff < pppppppuVar27)" ( (binary_expression "(uint *******)0xfeff < pppppppuVar27" (cast_expression "(uint *******)0xfeff" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_134;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_134" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3ae3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004dee0();" (call_expression "FUN_0004dee0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);" (assignment_expression "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29])" identifier = (cast_expression "(uint *******)((int)pppppppuVar27 + (int)param_1[0x29])" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar27 + (int)param_1[0x29])" ( (binary_expression "(int)pppppppuVar27 + (int)param_1[0x29]" (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_1[0x29]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x29]" identifier [ number_literal ]))) )))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_17;" (assignment_expression "pppppppuVar29 = extraout_ECX_17" identifier = identifier) ;) })) (expression_statement "pppppppuVar32 = local_120;" (assignment_expression "pppppppuVar32 = local_120" identifier = identifier) ;) (if_statement "if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }" if (parenthesized_expression "(pppppppuVar27 < local_130)" ( (binary_expression "pppppppuVar27 < local_130" identifier < identifier) )) (compound_statement "{\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }" { (expression_statement "local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];" (assignment_expression "local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27]" identifier = (cast_expression "(uint *******)param_1[0xe][(int)pppppppuVar27]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0xe][(int)pppppppuVar27]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier) ]))) ;) (if_statement "if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" if (parenthesized_expression "(local_124 == (uint *******)0x2)" ( (binary_expression "local_124 == (uint *******)0x2" identifier == (cast_expression "(uint *******)0x2" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }" { (if_statement "if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }" { (expression_statement "ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);" (assignment_expression "ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c)" identifier = (cast_expression "(uint ******)((int)local_144 + (int)*local_9c)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_144 + (int)*local_9c)" ( (binary_expression "(int)local_144 + (int)*local_9c" (cast_expression "(int)local_144" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)*local_9c" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*local_9c" * identifier))) )))) ;) (expression_statement "local_140 = (uint *******)local_9c[1];" (assignment_expression "local_140 = (uint *******)local_9c[1]" identifier = (cast_expression "(uint *******)local_9c[1]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_9c[1]" identifier [ number_literal ]))) ;) (expression_statement "local_194 = local_7c;" (assignment_expression "local_194 = local_7c" identifier = identifier) ;) (expression_statement "local_84 = local_7c;" (assignment_expression "local_84 = local_7c" identifier = identifier) ;) (expression_statement "puVar16 = (undefined *)0xffffffff;" (assignment_expression "puVar16 = (undefined *)0xffffffff" identifier = (cast_expression "(undefined *)0xffffffff" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_124 = param_1 + 0x4b;" (assignment_expression "local_124 = param_1 + 0x4b" identifier = (binary_expression "param_1 + 0x4b" identifier + number_literal)) ;) (if_statement "if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }" if (parenthesized_expression "(ppppppuVar21 != (uint ******)0x0)" ( (binary_expression "ppppppuVar21 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }" { (expression_statement "local_148 = ppppppuVar21;" (assignment_expression "local_148 = ppppppuVar21" identifier = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x10) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar24 + -0x10) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3b4f" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "sVar9 = strlen(*(char **)(puVar24 + -0x10));" (assignment_expression "sVar9 = strlen(*(char **)(puVar24 + -0x10))" identifier = (call_expression "strlen(*(char **)(puVar24 + -0x10))" identifier (argument_list "(*(char **)(puVar24 + -0x10))" ( (pointer_expression "*(char **)(puVar24 + -0x10)" * (cast_expression "(char **)(puVar24 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) )))) ;) (expression_statement "puVar16 = (undefined *)(sVar9 + (int)local_148);" (assignment_expression "puVar16 = (undefined *)(sVar9 + (int)local_148)" identifier = (cast_expression "(undefined *)(sVar9 + (int)local_148)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(sVar9 + (int)local_148)" ( (binary_expression "sVar9 + (int)local_148" identifier + (cast_expression "(int)local_148" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "ppppppuVar21 = local_148;" (assignment_expression "ppppppuVar21 = local_148" identifier = identifier) ;) })) (expression_statement "*(undefined4 *)(puVar24 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -4)" * (cast_expression "(undefined4 *)(puVar24 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar24 + -8) = puVar16;" (assignment_expression "*(undefined **)(puVar24 + -8) = puVar16" (pointer_expression "*(undefined **)(puVar24 + -8)" * (cast_expression "(undefined **)(puVar24 + -8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0xc) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar24 + -0xc) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar24 + -0xc)" * (cast_expression "(uint *******)(puVar24 + -0xc)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *********)(puVar24 + -0x10) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0x10) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0x10)" * (cast_expression "(uint *********)(puVar24 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3b67;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3b67" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004cf80();" (call_expression "FUN_0004cf80()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "local_64 = (uint *******)0x0;" (assignment_expression "local_64 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_60 = *pppppppuVar28;" (assignment_expression "local_60 = *pppppppuVar28" identifier = (pointer_expression "*pppppppuVar28" * identifier)) ;) (expression_statement "local_58 = pppppppuVar28[2];" (assignment_expression "local_58 = pppppppuVar28[2]" identifier = (subscript_expression "pppppppuVar28[2]" identifier [ number_literal ])) ;) (expression_statement "local_54 = pppppppuVar28[3];" (assignment_expression "local_54 = pppppppuVar28[3]" identifier = (subscript_expression "pppppppuVar28[3]" identifier [ number_literal ])) ;) (expression_statement "local_50 = pppppppuVar28[4];" (assignment_expression "local_50 = pppppppuVar28[4]" identifier = (subscript_expression "pppppppuVar28[4]" identifier [ number_literal ])) ;) (expression_statement "local_4c = pppppppuVar28[5];" (assignment_expression "local_4c = pppppppuVar28[5]" identifier = (subscript_expression "pppppppuVar28[5]" identifier [ number_literal ])) ;) (expression_statement "local_48 = pppppppuVar28[6];" (assignment_expression "local_48 = pppppppuVar28[6]" identifier = (subscript_expression "pppppppuVar28[6]" identifier [ number_literal ])) ;) (expression_statement "local_44 = pppppppuVar28[7];" (assignment_expression "local_44 = pppppppuVar28[7]" identifier = (subscript_expression "pppppppuVar28[7]" identifier [ number_literal ])) ;) (expression_statement "local_40 = pppppppuVar28[8];" (assignment_expression "local_40 = pppppppuVar28[8]" identifier = (subscript_expression "pppppppuVar28[8]" identifier [ number_literal ])) ;) (expression_statement "local_3c = pppppppuVar28[9];" (assignment_expression "local_3c = pppppppuVar28[9]" identifier = (subscript_expression "pppppppuVar28[9]" identifier [ number_literal ])) ;) (expression_statement "local_38 = pppppppuVar28[10];" (assignment_expression "local_38 = pppppppuVar28[10]" identifier = (subscript_expression "pppppppuVar28[10]" identifier [ number_literal ])) ;) (expression_statement "local_34 = pppppppuVar28[0xb];" (assignment_expression "local_34 = pppppppuVar28[0xb]" identifier = (subscript_expression "pppppppuVar28[0xb]" identifier [ number_literal ])) ;) (expression_statement "local_30 = pppppppuVar28[0xc];" (assignment_expression "local_30 = pppppppuVar28[0xc]" identifier = (subscript_expression "pppppppuVar28[0xc]" identifier [ number_literal ])) ;) (expression_statement "local_2c = pppppppuVar28[0xd];" (assignment_expression "local_2c = pppppppuVar28[0xd]" identifier = (subscript_expression "pppppppuVar28[0xd]" identifier [ number_literal ])) ;) (expression_statement "local_28 = pppppppuVar28[0xe];" (assignment_expression "local_28 = pppppppuVar28[0xe]" identifier = (subscript_expression "pppppppuVar28[0xe]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21 = pppppppuVar28[0xf];" (assignment_expression "ppppppuVar21 = pppppppuVar28[0xf]" identifier = (subscript_expression "pppppppuVar28[0xf]" identifier [ number_literal ])) ;) (expression_statement "local_6c = pppppppuVar22;" (assignment_expression "local_6c = pppppppuVar22" identifier = identifier) ;) (expression_statement "*(uint *********)(puVar24 + -0xc) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0xc) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0xc)" * (cast_expression "(uint *********)(puVar24 + -0xc)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_5c = local_140;" (assignment_expression "local_5c = local_140" identifier = identifier) ;) comment (expression_statement "local_24 = ppppppuVar21;" (assignment_expression "local_24 = ppppppuVar21" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3bee;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3bee" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000a10f0();" (call_expression "FUN_000a10f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_18;" (assignment_expression "pppppppuVar29 = extraout_ECX_18" identifier = identifier) ;) (if_statement "if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }" if (parenthesized_expression "(local_84 != local_194)" ( (binary_expression "local_84 != local_194" identifier != identifier) )) (compound_statement "{\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3c0b" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_19;" (assignment_expression "pppppppuVar29 = extraout_ECX_19" identifier = identifier) ;) })) (expression_statement "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;" (assignment_expression "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2" (subscript_expression "param_1[0xe][(int)pppppppuVar22]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)0x2" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2]" identifier [ (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1]" identifier [ (binary_expression "(int)pppppppuVar22 * 2 + 1" (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) })) }) (else_clause "else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" else (if_statement "if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" if (parenthesized_expression "(local_124 == (uint *******)0x0)" ( (binary_expression "local_124 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }" { (expression_statement "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;" (assignment_expression "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0" (subscript_expression "param_1[0xe][(int)pppppppuVar22]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2]" identifier [ (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1]" identifier [ (binary_expression "(int)pppppppuVar22 * 2 + 1" (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) }) (else_clause "else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" else (compound_statement "{\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" { (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0x14;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0x14" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3a12;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3a12" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppppuVar14 = (uint ****)FUN_0017ebf0();" (assignment_expression "ppppuVar14 = (uint ****)FUN_0017ebf0()" identifier = (cast_expression "(uint ****)FUN_0017ebf0()" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "FUN_0017ebf0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*ppppuVar14 = (uint ***)0x0;" (assignment_expression "*ppppuVar14 = (uint ***)0x0" (pointer_expression "*ppppuVar14" * identifier) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "ppppuVar14[1] = (uint ***)0x0;" (assignment_expression "ppppuVar14[1] = (uint ***)0x0" (subscript_expression "ppppuVar14[1]" identifier [ number_literal ]) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "ppppuVar14[2] = (uint ***)0x0;" (assignment_expression "ppppuVar14[2] = (uint ***)0x0" (subscript_expression "ppppuVar14[2]" identifier [ number_literal ]) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "ppppuVar14[3] = (uint ***)0x0;" (assignment_expression "ppppuVar14[3] = (uint ***)0x0" (subscript_expression "ppppuVar14[3]" identifier [ number_literal ]) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "ppppuVar14[4] = (uint ***)0x0;" (assignment_expression "ppppuVar14[4] = (uint ***)0x0" (subscript_expression "ppppuVar14[4]" identifier [ number_literal ]) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (if_statement "if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }" if (parenthesized_expression "(param_1[10] <= pppppppuVar22)" ( (binary_expression "param_1[10] <= pppppppuVar22" (subscript_expression "param_1[10]" identifier [ number_literal ]) <= identifier) )) (compound_statement "{\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    /* WARNING: Subroutine does not return */\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar32;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar32" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x37296;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x37296" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x37296" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x541;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x541" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);" (assignment_expression "*(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6)" (pointer_expression "*(byte **)(puVar24 + -0x10)" * (cast_expression "(byte **)(puVar24 + -0x10)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (cast_expression "(byte *)((int)pppppppuVar22 + -0xe7fe6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppuVar22 + -0xe7fe6)" ( (binary_expression "(int)pppppppuVar22 + -0xe7fe6" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa44c8;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa44c8" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "(*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;" (assignment_expression "(*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14" (subscript_expression "(*param_1[0x11])[(int)pppppppuVar22]" (parenthesized_expression "(*param_1[0x11])" ( (pointer_expression "*param_1[0x11]" * (subscript_expression "param_1[0x11]" identifier [ number_literal ])) )) [ (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) (expression_statement "*(uint *****)(puVar24 + -0xc) = ppppuVar14;" (assignment_expression "*(uint *****)(puVar24 + -0xc) = ppppuVar14" (pointer_expression "*(uint *****)(puVar24 + -0xc)" * (cast_expression "(uint *****)(puVar24 + -0xc)" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_13c;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_13c" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x18) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x1c) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x1c) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x1c)" * (cast_expression "(uint ********)(puVar24 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x20) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x20) = param_3" (pointer_expression "*(int *)(puVar24 + -0x20)" * (cast_expression "(int *)(puVar24 + -0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x24) = 0xa3a70;" (assignment_expression "*(undefined4 *)(puVar24 + -0x24) = 0xa3a70" (pointer_expression "*(undefined4 *)(puVar24 + -0x24)" * (cast_expression "(undefined4 *)(puVar24 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pppppuVar15 = (uint *****)FUN_0008a810();" (assignment_expression "pppppuVar15 = (uint *****)FUN_0008a810()" identifier = (cast_expression "(uint *****)FUN_0008a810()" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (call_expression "FUN_0008a810()" identifier (argument_list "()" ( ))))) ;) (expression_statement "param_1[0xe][(int)pppppppuVar22] = pppppuVar15;" (assignment_expression "param_1[0xe][(int)pppppppuVar22] = pppppuVar15" (subscript_expression "param_1[0xe][(int)pppppppuVar22]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2]" identifier [ (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1]" identifier [ (binary_expression "(int)pppppppuVar22 * 2 + 1" (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_16;" (assignment_expression "pppppppuVar29 = extraout_ECX_16" identifier = identifier) ;) }))))) })) (expression_statement "local_12c = local_12c + 1;" (assignment_expression "local_12c = local_12c + 1" identifier = (binary_expression "local_12c + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_dc != local_12c)" ( (binary_expression "local_dc != local_12c" identifier != identifier) )) ;) })) }) (else_clause "else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" else (if_statement "if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_e0 != local_dc)" ( (binary_expression "local_e0 != local_dc" identifier != identifier) )) (compound_statement "{\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x76c;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x76c" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x375d2" identifier + number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4525;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4525" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })))) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (if_statement "if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_136 == '\0')" ( (binary_expression "local_136 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }" { (if_statement "if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }" if (parenthesized_expression "(local_c8 != local_c4)" ( (binary_expression "local_c8 != local_c4" identifier != identifier) )) (compound_statement "{\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }" { (expression_statement "local_128 = 0;" (assignment_expression "local_128 = 0" identifier = number_literal) ;) (expression_statement "local_12c = local_17c;" (assignment_expression "local_12c = local_17c" identifier = identifier) ;) (expression_statement "piVar11 = local_c8;" (assignment_expression "piVar11 = local_c8" identifier = identifier) ;) (do_statement "do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);" do (compound_statement "{\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          }" { (expression_statement "iVar19 = *piVar11;" (assignment_expression "iVar19 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_15c[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = local_158[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (subscript_expression "local_158[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(int *)(puVar24 + -0x18) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x18) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x18)" * (cast_expression "(int *)(puVar24 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = local_128;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = local_128" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x20)" * (cast_expression "(uint ********)(puVar24 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x24) = local_164;" (assignment_expression "*(uint *******)(puVar24 + -0x24) = local_164" (pointer_expression "*(uint *******)(puVar24 + -0x24)" * (cast_expression "(uint *******)(puVar24 + -0x24)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x28) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x28) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x28)" * (cast_expression "(uint ********)(puVar24 + -0x28)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x28)" ( (binary_expression "puVar24 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x2c) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -0x2c) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -0x2c)" * (cast_expression "(undefined4 *)(puVar24 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x2c)" ( (binary_expression "puVar24 + -0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar24 + -0x30) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x30) = param_3" (pointer_expression "*(int *)(puVar24 + -0x30)" * (cast_expression "(int *)(puVar24 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x30)" ( (binary_expression "puVar24 + -0x30" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa3cc5" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" * (cast_expression "(undefined4 *)(puVar24 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x34)" ( (binary_expression "puVar24 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0008e680();" (call_expression "FUN_0008e680()" identifier (argument_list "()" ( ))) ;) (expression_statement "piVar11 = piVar11 + 1;" (assignment_expression "piVar11 = piVar11 + 1" identifier = (binary_expression "piVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_c4 != piVar11)" ( (binary_expression "local_c4 != piVar11" identifier != identifier) )) ;) })) (if_statement "if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }" if (parenthesized_expression "(local_b8 != local_bc)" ( (binary_expression "local_b8 != local_bc" identifier != identifier) )) (compound_statement "{\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }" { (expression_statement "local_128 = 0;" (assignment_expression "local_128 = 0" identifier = number_literal) ;) (expression_statement "local_12c = local_17c;" (assignment_expression "local_12c = local_17c" identifier = identifier) ;) (expression_statement "piVar11 = local_bc;" (assignment_expression "piVar11 = local_bc" identifier = identifier) ;) (do_statement "do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);" do (compound_statement "{\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          }" { (expression_statement "puVar8 = local_158;" (assignment_expression "puVar8 = local_158" identifier = identifier) ;) (expression_statement "iVar19 = *piVar11;" (assignment_expression "iVar19 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_15c[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (subscript_expression "puVar8[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(int *)(puVar24 + -0x18) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x18) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x18)" * (cast_expression "(int *)(puVar24 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = local_128;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = local_128" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x20)" * (cast_expression "(uint ********)(puVar24 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x24) = local_164;" (assignment_expression "*(uint *******)(puVar24 + -0x24) = local_164" (pointer_expression "*(uint *******)(puVar24 + -0x24)" * (cast_expression "(uint *******)(puVar24 + -0x24)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x28) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x28) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x28)" * (cast_expression "(uint ********)(puVar24 + -0x28)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x28)" ( (binary_expression "puVar24 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x2c) = 1;" (assignment_expression "*(undefined4 *)(puVar24 + -0x2c) = 1" (pointer_expression "*(undefined4 *)(puVar24 + -0x2c)" * (cast_expression "(undefined4 *)(puVar24 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x2c)" ( (binary_expression "puVar24 + -0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar24 + -0x30) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x30) = param_3" (pointer_expression "*(int *)(puVar24 + -0x30)" * (cast_expression "(int *)(puVar24 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x30)" ( (binary_expression "puVar24 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa3d3d" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" * (cast_expression "(undefined4 *)(puVar24 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x34)" ( (binary_expression "puVar24 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0008e680();" (call_expression "FUN_0008e680()" identifier (argument_list "()" ( ))) ;) (expression_statement "piVar11 = piVar11 + 1;" (assignment_expression "piVar11 = piVar11 + 1" identifier = (binary_expression "piVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b8 != piVar11)" ( (binary_expression "local_b8 != piVar11" identifier != identifier) )) ;) })) }) (else_clause "else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" else (if_statement "if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "((local_c8 != local_c4) || (local_b8 != local_bc))" ( (binary_expression "(local_c8 != local_c4) || (local_b8 != local_bc)" (parenthesized_expression "(local_c8 != local_c4)" ( (binary_expression "local_c8 != local_c4" identifier != identifier) )) || (parenthesized_expression "(local_b8 != local_bc)" ( (binary_expression "local_b8 != local_bc" identifier != identifier) ))) )) (compound_statement "{\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x7a0;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x7a0" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x375d2" identifier + number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4506;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4506" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })))) (if_statement "if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }" { (expression_statement "iVar19 = *param_4;" (assignment_expression "iVar19 = *param_4" identifier = (pointer_expression "*param_4" * identifier)) ;) (if_statement "if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }" { (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3d72;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3d72" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005cea0();" (call_expression "FUN_0005cea0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0xc;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0xc" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3d7c" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180780();" (call_expression "FUN_00180780()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar19 = param_4[1];" (assignment_expression "iVar19 = param_4[1]" identifier = (subscript_expression "param_4[1]" identifier [ number_literal ])) ;) (expression_statement "*param_4 = 0;" (assignment_expression "*param_4 = 0" (pointer_expression "*param_4" * identifier) = number_literal) ;) (if_statement "if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }" { (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3da0;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3da0" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005cea0();" (call_expression "FUN_0005cea0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0xc;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0xc" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3daa;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3daa" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180780();" (call_expression "FUN_00180780()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }" else (compound_statement "{\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }" { (if_statement "if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }" if (parenthesized_expression "(*local_190 != (uint ******)0x0)" ( (binary_expression "*local_190 != (uint ******)0x0" (pointer_expression "*local_190" * identifier) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }" { (expression_statement "*(uint *******)(puVar24 + -0x10) = *local_190;" (assignment_expression "*(uint *******)(puVar24 + -0x10) = *local_190" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "*local_190" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa282c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa282c" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }" if (parenthesized_expression "(local_190[1] != (uint ******)0x0)" ( (binary_expression "local_190[1] != (uint ******)0x0" (subscript_expression "local_190[1]" identifier [ number_literal ]) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }" { (expression_statement "*(uint *******)(puVar24 + -0x10) = local_190[1];" (assignment_expression "*(uint *******)(puVar24 + -0x10) = local_190[1]" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_190[1]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa284b;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa284b" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }" if (parenthesized_expression "(local_190[3] != (uint ******)0x0)" ( (binary_expression "local_190[3] != (uint ******)0x0" (subscript_expression "local_190[3]" identifier [ number_literal ]) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }" { (expression_statement "*(uint *******)(puVar24 + -0x10) = local_190[3];" (assignment_expression "*(uint *******)(puVar24 + -0x10) = local_190[3]" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_190[3]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa286a;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa286a" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }" if (parenthesized_expression "(local_190[6] != (uint ******)0x0)" ( (binary_expression "local_190[6] != (uint ******)0x0" (subscript_expression "local_190[6]" identifier [ number_literal ]) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }" { (expression_statement "*(uint *******)(puVar24 + -0x10) = local_190[6];" (assignment_expression "*(uint *******)(puVar24 + -0x10) = local_190[6]" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_190[6]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2889;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2889" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "param_1[0x15] = (uint ******)0x0;" (assignment_expression "param_1[0x15] = (uint ******)0x0" (subscript_expression "param_1[0x15]" identifier [ number_literal ]) = (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) }))) }) (else_clause "else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }" else (compound_statement "{\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }" { (expression_statement "local_ec = local_134;" (assignment_expression "local_ec = local_134" identifier = identifier) ;) (expression_statement "ppppppuVar21 = (uint ******)local_160[0x10];" (assignment_expression "ppppppuVar21 = (uint ******)local_160[0x10]" identifier = (cast_expression "(uint ******)local_160[0x10]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "local_160[0x10]" identifier [ number_literal ]))) ;) (expression_statement "local_124 = (uint *******)local_160[0x11];" (assignment_expression "local_124 = (uint *******)local_160[0x11]" identifier = (cast_expression "(uint *******)local_160[0x11]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_160[0x11]" identifier [ number_literal ]))) ;) (if_statement "if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }" if (parenthesized_expression "(ppppppuVar21 < local_148)" ( (binary_expression "ppppppuVar21 < local_148" identifier < identifier) )) (compound_statement "{\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }" { (expression_statement "local_16c = (uint *******)0x0;" (assignment_expression "local_16c = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_168 = 0;" (assignment_expression "local_168 = 0" identifier = number_literal) ;) (expression_statement "local_1a0 = local_120 + 0x122;" (assignment_expression "local_1a0 = local_120 + 0x122" identifier = (binary_expression "local_120 + 0x122" identifier + number_literal)) ;) (expression_statement "local_1a4 = local_120 + 0x122;" (assignment_expression "local_1a4 = local_120 + 0x122" identifier = (binary_expression "local_120 + 0x122" identifier + number_literal)) ;) (expression_statement "puVar26 = auStack_1ac;" (assignment_expression "puVar26 = auStack_1ac" identifier = identifier) ;) (do_statement "do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);" do (compound_statement "{\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        }" { (expression_statement "local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);" (assignment_expression "local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144)" identifier = (cast_expression "(uint *******)((int)ppppppuVar21 + (int)local_144)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppuVar21 + (int)local_144)" ( (binary_expression "(int)ppppppuVar21 + (int)local_144" (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_144" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_ec = local_134;" (assignment_expression "local_ec = local_134" identifier = identifier) ;) (if_statement "if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }" { (expression_statement "*(int *)(puVar26 + -4) = param_2;" (assignment_expression "*(int *)(puVar26 + -4) = param_2" (pointer_expression "*(int *)(puVar26 + -4)" * (cast_expression "(int *)(puVar26 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -8) = local_f0;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_f0" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2406;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2406" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_000925b0();" (assignment_expression "cVar7 = FUN_000925b0()" identifier = (call_expression "FUN_000925b0()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar33 = cVar7 == '\0';" (assignment_expression "bVar33 = cVar7 == '\0'" identifier = (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ;) (expression_statement "bVar35 = cVar7 == '\x01';" (assignment_expression "bVar35 = cVar7 == '\x01'" identifier = (binary_expression "cVar7 == '\x01'" identifier == (char_literal "'\x01'" ' escape_sequence '))) ;) (if_statement "if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }" { (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "bVar35 = (char)local_140 == '\0';" (assignment_expression "bVar35 = (char)local_140 == '\0'" identifier = (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }" { (expression_statement "*(undefined4 *)(puVar26 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar26 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar26 + -4)" * (cast_expression "(undefined4 *)(puVar26 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) comment comment (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa4433;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa4433" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';" (assignment_expression "bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0'" identifier = (binary_expression "*(char *)((int)(*local_13c)[2] + 0x1a25) == '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x1a25)" * (cast_expression "(char *)((int)(*local_13c)[2] + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(*local_13c)[2] + 0x1a25)" ( (binary_expression "(int)(*local_13c)[2] + 0x1a25" (cast_expression "(int)(*local_13c)[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }" { (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)local_f0 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)local_f0 >> 5) * 4" (parenthesized_expression "((uint)local_f0 >> 5)" ( (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) )))) ;) (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)local_f0 & 0x1f)" number_literal << (parenthesized_expression "((byte)local_f0 & 0x1f)" ( (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) (expression_statement "bVar35 = *puVar2 == 0;" (assignment_expression "bVar35 = *puVar2 == 0" identifier = (binary_expression "*puVar2 == 0" (pointer_expression "*puVar2" * identifier) == number_literal)) ;) })) })) })) (expression_statement "iVar19 = 0x10;" (assignment_expression "iVar19 = 0x10" identifier = number_literal) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdee8f);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdee8f)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdee8f)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdee8f)" ( (binary_expression "(int)local_120 + -0xdee8f" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);" do (compound_statement "{\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            }" { (expression_statement "pbVar30 = pbVar31;" (assignment_expression "pbVar30 = pbVar31" identifier = identifier) ;) (if_statement "if (iVar19 == 0) break;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar19 = iVar19 + -1;" (assignment_expression "iVar19 = iVar19 + -1" identifier = (binary_expression "iVar19 + -1" identifier + number_literal)) ;) (expression_statement "pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar22 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar22 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar30;" (assignment_expression "pbVar31 = pbVar30" identifier = identifier) ;) }) while (parenthesized_expression "(bVar35)" ( identifier )) ;) (if_statement "if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }" if (parenthesized_expression "((!bVar33 && !bVar35) == bVar33)" ( (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" ( (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" ! identifier) && (unary_expression "!bVar35" ! identifier)) )) == identifier) )) (compound_statement "{\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }" { (expression_statement "local_137 = 1;" (assignment_expression "local_137 = 1" identifier = number_literal) ;) (expression_statement "local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);" (assignment_expression "local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c)" identifier = (cast_expression "(uint *******)((uint)local_ec[2] | (uint)local_16c)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_ec[2] | (uint)local_16c)" ( (binary_expression "(uint)local_ec[2] | (uint)local_16c" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) | (cast_expression "(uint)local_16c" ( (type_descriptor "uint" type_identifier) ) identifier)) )))) ;) (expression_statement "local_168 = (uint)local_ec[3] | local_168;" (assignment_expression "local_168 = (uint)local_ec[3] | local_168" identifier = (binary_expression "(uint)local_ec[3] | local_168" (cast_expression "(uint)local_ec[3]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[3]" identifier [ number_literal ])) | identifier)) ;) (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)local_f0 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)local_f0 >> 5) * 4" (parenthesized_expression "((uint)local_f0 >> 5)" ( (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) )))) ;) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)local_f0 & 0x1f)" number_literal << (parenthesized_expression "((byte)local_f0 & 0x1f)" ( (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) })) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2497;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2497" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_00091ac0();" (assignment_expression "cVar7 = FUN_00091ac0()" identifier = (call_expression "FUN_00091ac0()" identifier (argument_list "()" ( )))) ;) (expression_statement "ppppppuVar21 = *local_13c;" (assignment_expression "ppppppuVar21 = *local_13c" identifier = (pointer_expression "*local_13c" * identifier)) ;) (if_statement "if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }" if (parenthesized_expression "((cVar7 == '\x01') && ((char)local_140 == '\0'))" ( (binary_expression "(cVar7 == '\x01') && ((char)local_140 == '\0')" (parenthesized_expression "(cVar7 == '\x01')" ( (binary_expression "cVar7 == '\x01'" identifier == (char_literal "'\x01'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_140 == '\0')" ( (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }" { (expression_statement "pppppuVar15 = ppppppuVar21[2];" (assignment_expression "pppppuVar15 = ppppppuVar21[2]" identifier = (subscript_expression "ppppppuVar21[2]" identifier [ number_literal ])) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }" { (expression_statement "*(byte **)(puVar26 + -4) = pbVar30;" (assignment_expression "*(byte **)(puVar26 + -4) = pbVar30" (pointer_expression "*(byte **)(puVar26 + -4)" * (cast_expression "(byte **)(puVar26 + -4)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa444f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa444f" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }" if (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x1a25) == '\0')" ( (binary_expression "*(char *)((int)pppppuVar15 + 0x1a25) == '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x1a25)" * (cast_expression "(char *)((int)pppppuVar15 + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x1a25)" ( (binary_expression "(int)pppppuVar15 + 0x1a25" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }" { (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)local_f0 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)local_f0 >> 5) * 4" (parenthesized_expression "((uint)local_f0 >> 5)" ( (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) )))) ;) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)local_f0 & 0x1f)" number_literal << (parenthesized_expression "((byte)local_f0 & 0x1f)" ( (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) })) })) (expression_statement "pppppuVar15 = ppppppuVar21[3];" (assignment_expression "pppppuVar15 = ppppppuVar21[3]" identifier = (subscript_expression "ppppppuVar21[3]" identifier [ number_literal ])) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }" { (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371cf;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371cf" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371cf" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x69;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x69" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa4314;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa4314" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "pppuVar4 = pppppuVar15[1][0x14];" (assignment_expression "pppuVar4 = pppppuVar15[1][0x14]" identifier = (subscript_expression "pppppuVar15[1][0x14]" (subscript_expression "pppppuVar15[1]" identifier [ number_literal ]) [ number_literal ])) ;) (expression_statement "bVar33 = pppuVar4 == (uint ***)0x0;" (assignment_expression "bVar33 = pppuVar4 == (uint ***)0x0" identifier = (binary_expression "pppuVar4 == (uint ***)0x0" identifier == (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal))) ;) (expression_statement "pppppppuVar29 = local_f0;" (assignment_expression "pppppppuVar29 = local_f0" identifier = identifier) ;) (if_statement "if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }" if (parenthesized_expression "(bVar33)" ( identifier )) (compound_statement "{\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }" { (labeled_statement "LAB_000a2b98:\n              bVar35 = false;" statement_identifier : (expression_statement "bVar35 = false;" (assignment_expression "bVar35 = false" identifier = false) ;)) (expression_statement "iVar19 = 0x10;" (assignment_expression "iVar19 = 0x10" identifier = number_literal) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdd173);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdd173)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdd173)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdd173)" ( (binary_expression "(int)local_120 + -0xdd173" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);" do (compound_statement "{\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              }" { (if_statement "if (iVar19 == 0) break;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar19 = iVar19 + -1;" (assignment_expression "iVar19 = iVar19 + -1" identifier = (binary_expression "iVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar22 < *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar22 == *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (if_statement "if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;" if (parenthesized_expression "((!bVar35 && !bVar33) == bVar35)" ( (binary_expression "(!bVar35 && !bVar33) == bVar35" (parenthesized_expression "(!bVar35 && !bVar33)" ( (binary_expression "!bVar35 && !bVar33" (unary_expression "!bVar35" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_000a24fe;" goto statement_identifier ;)) (expression_statement "bVar33 = local_124 == (uint *******)0x7;" (assignment_expression "bVar33 = local_124 == (uint *******)0x7" identifier = (binary_expression "local_124 == (uint *******)0x7" identifier == (cast_expression "(uint *******)0x7" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ;) (if_statement "if (!bVar33) goto LAB_000a2522;" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (goto_statement "goto LAB_000a2522;" goto statement_identifier ;)) (labeled_statement "LAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;" statement_identifier : (expression_statement "bVar35 = local_124 < (uint *******)0x7;" (assignment_expression "bVar35 = local_124 < (uint *******)0x7" identifier = (binary_expression "local_124 < (uint *******)0x7" identifier < (cast_expression "(uint *******)0x7" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ;)) (expression_statement "iVar19 = 0x13;" (assignment_expression "iVar19 = 0x13" identifier = number_literal) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_120 + -0x37b91;" (assignment_expression "pppppppuVar27 = local_120 + -0x37b91" identifier = (binary_expression "local_120 + -0x37b91" identifier + number_literal)) ;) (do_statement "do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);" do (compound_statement "{\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              }" { (if_statement "if (iVar19 == 0) break;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar19 = iVar19 + -1;" (assignment_expression "iVar19 = iVar19 + -1" identifier = (binary_expression "iVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27" identifier = (binary_expression "*(byte *)pppppppuVar22 < *(byte *)pppppppuVar27" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*(byte *)pppppppuVar27" * (cast_expression "(byte *)pppppppuVar27" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27" identifier = (binary_expression "*(byte *)pppppppuVar22 == *(byte *)pppppppuVar27" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*(byte *)pppppppuVar27" * (cast_expression "(byte *)pppppppuVar27" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)))) ;) (expression_statement "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar27 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar27 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar27 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (if_statement "if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }" if (parenthesized_expression "((!bVar35 && !bVar33) != bVar35)" ( (binary_expression "(!bVar35 && !bVar33) != bVar35" (parenthesized_expression "(!bVar35 && !bVar33)" ( (binary_expression "!bVar35 && !bVar33" (unary_expression "!bVar35" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) != identifier) )) (compound_statement "{\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }" { (expression_statement "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;" (assignment_expression "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" identifier = (binary_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" (parenthesized_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4))" ( (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f)" number_literal << (parenthesized_expression "((byte)pppppppuVar29 & 0x1f)" ( (binary_expression "(byte)pppppppuVar29 & 0x1f" (cast_expression "(byte)pppppppuVar29" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) & (pointer_expression "*(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" * (cast_expression "(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((uint)pppppppuVar29 >> 5)" ( (binary_expression "(uint)pppppppuVar29 >> 5" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) ))))) )) != number_literal)) ;) (expression_statement "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);" (assignment_expression "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" identifier = (cast_expression "(uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" identifier (argument_list "((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" ( (call_expression "(uint3)((uint)pppppppuVar29 >> 0xd)" (parenthesized_expression "(uint3)" ( identifier )) (argument_list "((uint)pppppppuVar29 >> 0xd)" ( (binary_expression "(uint)pppppppuVar29 >> 0xd" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))) , identifier ))))) ;) (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" identifier = identifier) ;) (if_statement "if (bVar33) goto LAB_000a2c18;" if (parenthesized_expression "(bVar33)" ( identifier )) (goto_statement "goto LAB_000a2c18;" goto statement_identifier ;)) (labeled_statement "LAB_000a2551:\n                bVar33 = false;" statement_identifier : (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;)) (expression_statement "bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;" (assignment_expression "bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0" identifier = (binary_expression "(*(byte *)((int)local_ec + 9) & 2) == 0" (parenthesized_expression "(*(byte *)((int)local_ec + 9) & 2)" ( (binary_expression "*(byte *)((int)local_ec + 9) & 2" (pointer_expression "*(byte *)((int)local_ec + 9)" * (cast_expression "(byte *)((int)local_ec + 9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_ec + 9)" ( (binary_expression "(int)local_ec + 9" (cast_expression "(int)local_ec" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) )) == number_literal)) ;) (expression_statement "pppppppuVar29 = pppppppuVar27;" (assignment_expression "pppppppuVar29 = pppppppuVar27" identifier = identifier) ;) (if_statement "if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }" { (expression_statement "pppppppuVar29 = (uint *******)0xd;" (assignment_expression "pppppppuVar29 = (uint *******)0xd" identifier = (cast_expression "(uint *******)0xd" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdd163);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdd163)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdd163)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdd163)" ( (binary_expression "(int)local_120 + -0xdd163" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);" do (compound_statement "{\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar28 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar35)" ( identifier )) ;) (if_statement "if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }" if (parenthesized_expression "((!bVar33 && !bVar35) == bVar33)" ( (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" ( (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" ! identifier) && (unary_expression "!bVar35" ! identifier)) )) == identifier) )) (compound_statement "{\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }" { (expression_statement "*(uint *********)(puVar26 + -0x10) = &local_ec;" (assignment_expression "*(uint *********)(puVar26 + -0x10) = &local_ec" (pointer_expression "*(uint *********)(puVar26 + -0x10)" * (cast_expression "(uint *********)(puVar26 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_ec" & identifier)) ;) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x14)" * (cast_expression "(uint ********)(puVar26 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x18) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar26 + -0x18) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar26 + -0x18)" * (cast_expression "(uint ********)(puVar26 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x1c) = param_3;" (assignment_expression "*(int *)(puVar26 + -0x1c) = param_3" (pointer_expression "*(int *)(puVar26 + -0x1c)" * (cast_expression "(int *)(puVar26 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x20) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x20) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x20)" * (cast_expression "(uint ********)(puVar26 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa352c;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa352c" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" * (cast_expression "(undefined4 *)(puVar26 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_0009cac0();" (assignment_expression "cVar7 = FUN_0009cac0()" identifier = (call_expression "FUN_0009cac0()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_11;" (assignment_expression "pppppppuVar29 = extraout_ECX_11" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (cVar7 == '\0') goto LAB_000a2c3a;" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;)) })) })) (labeled_statement "LAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);" statement_identifier : (expression_statement "iVar19 = *(int *)(param_3 + 0x1d0);" (assignment_expression "iVar19 = *(int *)(param_3 + 0x1d0)" identifier = (pointer_expression "*(int *)(param_3 + 0x1d0)" * (cast_expression "(int *)(param_3 + 0x1d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x1d0)" ( (binary_expression "param_3 + 0x1d0" identifier + number_literal) ))))) ;)) (if_statement "if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;" if (parenthesized_expression "((iVar19 == 0) || ((char)pppppppuVar22 != '\0'))" ( (binary_expression "(iVar19 == 0) || ((char)pppppppuVar22 != '\0')" (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) || (parenthesized_expression "((char)pppppppuVar22 != '\0')" ( (binary_expression "(char)pppppppuVar22 != '\0'" (cast_expression "(char)pppppppuVar22" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000a22b0;" goto statement_identifier ;)) (labeled_statement "LAB_000a259c:\n                pppppppuVar22 = local_120;" statement_identifier : (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;)) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa25b0;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa25b0" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_00066600();" (assignment_expression "cVar7 = FUN_00066600()" identifier = (call_expression "FUN_00066600()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;) (expression_statement "pppppppuVar29 = extraout_ECX_00;" (assignment_expression "pppppppuVar29 = extraout_ECX_00" identifier = identifier) ;) (if_statement "if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }" if (parenthesized_expression "(cVar7 != '\0')" ( (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }" { (expression_statement "local_150 = local_ec[9];" (assignment_expression "local_150 = local_ec[9]" identifier = (subscript_expression "local_ec[9]" identifier [ number_literal ])) ;) (expression_statement "local_154 = (uint *******)local_ec[8];" (assignment_expression "local_154 = (uint *******)local_ec[8]" identifier = (cast_expression "(uint *******)local_ec[8]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_ec[8]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar21 = param_1[0xd];" (assignment_expression "ppppppuVar21 = param_1[0xd]" identifier = (subscript_expression "param_1[0xd]" identifier [ number_literal ])) ;) (if_statement "if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }" if (parenthesized_expression "(ppppppuVar21 != (uint ******)0x0)" ( (binary_expression "ppppppuVar21 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }" { (expression_statement "ppppppuVar17 = (uint ******)ppppppuVar21[2];" (assignment_expression "ppppppuVar17 = (uint ******)ppppppuVar21[2]" identifier = (cast_expression "(uint ******)ppppppuVar21[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar21[2]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar13 = ppppppuVar21 + 1;" (assignment_expression "ppppppuVar13 = ppppppuVar21 + 1" identifier = (binary_expression "ppppppuVar21 + 1" identifier + number_literal)) ;) (if_statement "if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }" if (parenthesized_expression "((uint ******)ppppppuVar21[2] != (uint ******)0x0)" ( (binary_expression "(uint ******)ppppppuVar21[2] != (uint ******)0x0" (cast_expression "(uint ******)ppppppuVar21[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar21[2]" identifier [ number_literal ])) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }" { (do_statement "do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);" do (compound_statement "{\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      }" { (while_statement "while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }" while (parenthesized_expression "(ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4])" ( (comma_expression "ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]" (assignment_expression "ppppppuVar20 = ppppppuVar17" identifier = identifier) , (binary_expression "local_f0 <= ppppppuVar20[4]" identifier <= (subscript_expression "ppppppuVar20[4]" identifier [ number_literal ]))) )) (compound_statement "{\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }" { (expression_statement "ppppppuVar17 = (uint ******)ppppppuVar20[2];" (assignment_expression "ppppppuVar17 = (uint ******)ppppppuVar20[2]" identifier = (cast_expression "(uint ******)ppppppuVar20[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar20[2]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar13 = ppppppuVar20;" (assignment_expression "ppppppuVar13 = ppppppuVar20" identifier = identifier) ;) (if_statement "if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;" if (parenthesized_expression "((uint ******)ppppppuVar20[2] == (uint ******)0x0)" ( (binary_expression "(uint ******)ppppppuVar20[2] == (uint ******)0x0" (cast_expression "(uint ******)ppppppuVar20[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar20[2]" identifier [ number_literal ])) == (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_000a260d;" goto statement_identifier ;)) })) (expression_statement "ppppppuVar1 = ppppppuVar20 + 3;" (assignment_expression "ppppppuVar1 = ppppppuVar20 + 3" identifier = (binary_expression "ppppppuVar20 + 3" identifier + number_literal)) ;) (expression_statement "ppppppuVar17 = (uint ******)*ppppppuVar1;" (assignment_expression "ppppppuVar17 = (uint ******)*ppppppuVar1" identifier = (cast_expression "(uint ******)*ppppppuVar1" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar1" * identifier))) ;) (expression_statement "ppppppuVar20 = ppppppuVar13;" (assignment_expression "ppppppuVar20 = ppppppuVar13" identifier = identifier) ;) }) while (parenthesized_expression "((uint ******)*ppppppuVar1 != (uint ******)0x0)" ( (binary_expression "(uint ******)*ppppppuVar1 != (uint ******)0x0" (cast_expression "(uint ******)*ppppppuVar1" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar1" * identifier)) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) (labeled_statement "LAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }" statement_identifier : (if_statement "if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }" if (parenthesized_expression "((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0))" ( (binary_expression "(ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)" (parenthesized_expression "(ppppppuVar21 + 1 != ppppppuVar20)" ( (binary_expression "ppppppuVar21 + 1 != ppppppuVar20" (binary_expression "ppppppuVar21 + 1" identifier + number_literal) != identifier) )) && (parenthesized_expression "(ppppppuVar20[4] <= local_f0)" ( (binary_expression "ppppppuVar20[4] <= local_f0" (subscript_expression "ppppppuVar20[4]" identifier [ number_literal ]) <= identifier) ))) )) (compound_statement "{\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }" { (expression_statement "local_154 = (uint *******)ppppppuVar20[5];" (assignment_expression "local_154 = (uint *******)ppppppuVar20[5]" identifier = (cast_expression "(uint *******)ppppppuVar20[5]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "ppppppuVar20[5]" identifier [ number_literal ]))) ;) (expression_statement "local_150 = (uint ******)0x0;" (assignment_expression "local_150 = (uint ******)0x0" identifier = (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) }))) })) })) (expression_statement "*(uint *******)(puVar26 + -0xc) = local_150;" (assignment_expression "*(uint *******)(puVar26 + -0xc) = local_150" (pointer_expression "*(uint *******)(puVar26 + -0xc)" * (cast_expression "(uint *******)(puVar26 + -0xc)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_154;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_154" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x14)" * (cast_expression "(uint ********)(puVar26 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x18) = local_f0;" (assignment_expression "*(uint ********)(puVar26 + -0x18) = local_f0" (pointer_expression "*(uint ********)(puVar26 + -0x18)" * (cast_expression "(uint ********)(puVar26 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x1c) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x1c) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x1c)" * (cast_expression "(uint ********)(puVar26 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x20) = iVar19;" (assignment_expression "*(int *)(puVar26 + -0x20) = iVar19" (pointer_expression "*(int *)(puVar26 + -0x20)" * (cast_expression "(int *)(puVar26 + -0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa263f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa263f" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" * (cast_expression "(undefined4 *)(puVar26 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00067350();" (call_expression "FUN_00067350()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_01;" (assignment_expression "pppppppuVar29 = extraout_ECX_01" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) })) (goto_statement "goto LAB_000a22b0;" goto statement_identifier ;) })) (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0xc) = param_3;" (assignment_expression "*(int *)(puVar26 + -0xc) = param_3" (pointer_expression "*(int *)(puVar26 + -0xc)" * (cast_expression "(int *)(puVar26 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa326f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa326f" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0009a280();" (call_expression "FUN_0009a280()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);" (assignment_expression "pppppppuVar22 = (uint *******)((uint)local_f0 >> 5)" identifier = (cast_expression "(uint *******)((uint)local_f0 >> 5)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_f0 >> 5)" ( (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + (int)pppppppuVar22 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + (int)pppppppuVar22 * 4)" ( (binary_expression "(int)local_b0 + (int)pppppppuVar22 * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(int)pppppppuVar22 * 4" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)local_f0 & 0x1f)" number_literal << (parenthesized_expression "((byte)local_f0 & 0x1f)" ( (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) (expression_statement "pppppppuVar29 = local_f0;" (assignment_expression "pppppppuVar29 = local_f0" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) }) (else_clause "else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }" else (compound_statement "{\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }" { (expression_statement "local_154 = local_f0;" (assignment_expression "local_154 = local_f0" identifier = identifier) ;) (expression_statement "*(uint ****)(puVar26 + -0xc) = pppuVar4;" (assignment_expression "*(uint ****)(puVar26 + -0xc) = pppuVar4" (pointer_expression "*(uint ****)(puVar26 + -0xc)" * (cast_expression "(uint ****)(puVar26 + -0xc)" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa24ed;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa24ed" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));" (assignment_expression "iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" identifier = (call_expression "strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" identifier (argument_list "(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" ( (pointer_expression "*(char **)(puVar26 + -0x10)" * (cast_expression "(char **)(puVar26 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar26 + -0xc)" * (cast_expression "(char **)(puVar26 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "bVar33 = iVar19 == 0;" (assignment_expression "bVar33 = iVar19 == 0" identifier = (binary_expression "iVar19 == 0" identifier == number_literal)) ;) (expression_statement "pppppppuVar29 = local_154;" (assignment_expression "pppppppuVar29 = local_154" identifier = identifier) ;) (if_statement "if (!bVar33) goto LAB_000a2b98;" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (goto_statement "goto LAB_000a2b98;" goto statement_identifier ;)) (labeled_statement "LAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);" statement_identifier : (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((uint)pppppppuVar29 >> 5)" ( (binary_expression "(uint)pppppppuVar29 >> 5" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) )))) ;)) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f)" number_literal << (parenthesized_expression "((byte)pppppppuVar29 & 0x1f)" ( (binary_expression "(byte)pppppppuVar29 & 0x1f" (cast_expression "(byte)pppppppuVar29" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) (expression_statement "bVar33 = local_124 == (uint *******)0x7;" (assignment_expression "bVar33 = local_124 == (uint *******)0x7" identifier = (binary_expression "local_124 == (uint *******)0x7" identifier == (cast_expression "(uint *******)0x7" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ;) (if_statement "if (bVar33) goto LAB_000a2bcb;" if (parenthesized_expression "(bVar33)" ( identifier )) (goto_statement "goto LAB_000a2bcb;" goto statement_identifier ;)) (labeled_statement "LAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;" statement_identifier : (expression_statement "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;" (assignment_expression "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" identifier = (binary_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" (parenthesized_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4))" ( (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f)" number_literal << (parenthesized_expression "((byte)pppppppuVar29 & 0x1f)" ( (binary_expression "(byte)pppppppuVar29 & 0x1f" (cast_expression "(byte)pppppppuVar29" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) & (pointer_expression "*(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" * (cast_expression "(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((uint)pppppppuVar29 >> 5)" ( (binary_expression "(uint)pppppppuVar29 >> 5" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) ))))) )) != number_literal)) ;)) (expression_statement "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);" (assignment_expression "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" identifier = (cast_expression "(uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" identifier (argument_list "((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" ( (call_expression "(uint3)((uint)pppppppuVar29 >> 0xd)" (parenthesized_expression "(uint3)" ( identifier )) (argument_list "((uint)pppppppuVar29 >> 0xd)" ( (binary_expression "(uint)pppppppuVar29 >> 0xd" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))) , identifier ))))) ;) (if_statement "if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (compound_statement "{\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }" { (expression_statement "pppppppuVar22 = (uint *******)0x0;" (assignment_expression "pppppppuVar22 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" identifier = identifier) ;) (if_statement "if (local_124 != (uint *******)0x11) goto LAB_000a2551;" if (parenthesized_expression "(local_124 != (uint *******)0x11)" ( (binary_expression "local_124 != (uint *******)0x11" identifier != (cast_expression "(uint *******)0x11" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000a2551;" goto statement_identifier ;)) (expression_statement "*(void ***)(puVar26 + -0x10) = &local_b0;" (assignment_expression "*(void ***)(puVar26 + -0x10) = &local_b0" (pointer_expression "*(void ***)(puVar26 + -0x10)" * (cast_expression "(void ***)(puVar26 + -0x10)" ( (type_descriptor "void ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_b0" & identifier)) ;) (expression_statement "*(uint *******)(puVar26 + -0x14) = local_148;" (assignment_expression "*(uint *******)(puVar26 + -0x14) = local_148" (pointer_expression "*(uint *******)(puVar26 + -0x14)" * (cast_expression "(uint *******)(puVar26 + -0x14)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar26 + -0x18) = local_144;" (assignment_expression "*(uint *******)(puVar26 + -0x18) = local_144" (pointer_expression "*(uint *******)(puVar26 + -0x18)" * (cast_expression "(uint *******)(puVar26 + -0x18)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar26 + -0x1c) = local_160;" (assignment_expression "*(uint *******)(puVar26 + -0x1c) = local_160" (pointer_expression "*(uint *******)(puVar26 + -0x1c)" * (cast_expression "(uint *******)(puVar26 + -0x1c)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x20)" * (cast_expression "(uint ********)(puVar26 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x24) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar26 + -0x24) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar26 + -0x24)" * (cast_expression "(uint ********)(puVar26 + -0x24)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x28) = param_3;" (assignment_expression "*(int *)(puVar26 + -0x28) = param_3" (pointer_expression "*(int *)(puVar26 + -0x28)" * (cast_expression "(int *)(puVar26 + -0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x28)" ( (binary_expression "puVar26 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x2c) = param_2;" (assignment_expression "*(int *)(puVar26 + -0x2c) = param_2" (pointer_expression "*(int *)(puVar26 + -0x2c)" * (cast_expression "(int *)(puVar26 + -0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x2c)" ( (binary_expression "puVar26 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x30) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x30) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x30)" * (cast_expression "(uint ********)(puVar26 + -0x30)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x30)" ( (binary_expression "puVar26 + -0x30" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x34) = 0xa3371;" (assignment_expression "*(undefined4 *)(puVar26 + -0x34) = 0xa3371" (pointer_expression "*(undefined4 *)(puVar26 + -0x34)" * (cast_expression "(undefined4 *)(puVar26 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x34)" ( (binary_expression "puVar26 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_0009e290();" (assignment_expression "cVar7 = FUN_0009e290()" identifier = (call_expression "FUN_0009e290()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_10;" (assignment_expression "pppppppuVar29 = extraout_ECX_10" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (cVar7 == '\0') goto LAB_000a2c3a;" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;)) (expression_statement "pppppppuVar22 = (uint *******)0x0;" (assignment_expression "pppppppuVar22 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000a2583;" goto statement_identifier ;) })) (labeled_statement "LAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);" statement_identifier : (expression_statement "iVar19 = *(int *)(param_3 + 0x1d0);" (assignment_expression "iVar19 = *(int *)(param_3 + 0x1d0)" identifier = (pointer_expression "*(int *)(param_3 + 0x1d0)" * (cast_expression "(int *)(param_3 + 0x1d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x1d0)" ( (binary_expression "param_3 + 0x1d0" identifier + number_literal) ))))) ;)) (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" identifier = identifier) ;) (if_statement "if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }" { (if_statement "if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;" if (parenthesized_expression "((char)pppppppuVar22 == '\0')" ( (binary_expression "(char)pppppppuVar22 == '\0'" (cast_expression "(char)pppppppuVar22" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a22b0;" goto statement_identifier ;)) }) (else_clause "else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;" else (if_statement "if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;" if (parenthesized_expression "((char)pppppppuVar22 == '\0')" ( (binary_expression "(char)pppppppuVar22 == '\0'" (cast_expression "(char)pppppppuVar22" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a259c;" goto statement_identifier ;)))) }))) (labeled_statement "LAB_000a2c3a:\n            local_f0 = pppppppuVar27;" statement_identifier : (expression_statement "local_f0 = pppppppuVar27;" (assignment_expression "local_f0 = pppppppuVar27" identifier = identifier) ;)) (expression_statement "param_1[0xe][(int)local_f0] = (uint *****)0x0;" (assignment_expression "param_1[0xe][(int)local_f0] = (uint *****)0x0" (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" identifier [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" identifier [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" identifier = identifier) ;) }) (else_clause "else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }" else (compound_statement "{\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }" { (labeled_statement "LAB_000a22b0:\n            puVar24 = puVar26;" statement_identifier : (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" identifier = identifier) ;)) (if_statement "if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }" if (parenthesized_expression "(local_136 != '\0')" ( (binary_expression "local_136 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }" { (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa42f6;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa42f6" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }" if (parenthesized_expression "(*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0')" ( (binary_expression "*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x18b1)" * (cast_expression "(char *)((int)(*local_13c)[2] + 0x18b1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(*local_13c)[2] + 0x18b1)" ( (binary_expression "(int)(*local_13c)[2] + 0x18b1" (cast_expression "(int)(*local_13c)[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }" { (expression_statement "*(uint ********)(puVar26 + -0xc) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa22ee;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa22ee" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_00091d10();" (assignment_expression "cVar7 = FUN_00091d10()" identifier = (call_expression "FUN_00091d10()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }" { (expression_statement "*(uint ********)(puVar26 + -8) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x10) = param_3;" (assignment_expression "*(int *)(puVar26 + -0x10) = param_3" (pointer_expression "*(int *)(puVar26 + -0x10)" * (cast_expression "(int *)(puVar26 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2313;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2313" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_0007b5f0();" (assignment_expression "cVar7 = FUN_0007b5f0()" identifier = (call_expression "FUN_0007b5f0()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;" if (parenthesized_expression "((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))" ( (binary_expression "(cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2)" (parenthesized_expression "(cVar7 != '\0')" ( (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((byte *)((int)local_124 + -0xe) < (byte *)0x2)" ( (binary_expression "(byte *)((int)local_124 + -0xe) < (byte *)0x2" (cast_expression "(byte *)((int)local_124 + -0xe)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_124 + -0xe)" ( (binary_expression "(int)local_124 + -0xe" (cast_expression "(int)local_124" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) < (cast_expression "(byte *)0x2" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000a2c68;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }" else (compound_statement "{\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }" { (labeled_statement "LAB_000a2c68:\n                  local_84 = param_1;" statement_identifier : (expression_statement "local_84 = param_1;" (assignment_expression "local_84 = param_1" identifier = identifier) ;)) (expression_statement "local_80 = local_f0;" (assignment_expression "local_80 = local_f0" identifier = identifier) ;) (expression_statement "*(uint *********)(puVar26 + -0xc) = &local_84;" (assignment_expression "*(uint *********)(puVar26 + -0xc) = &local_84" (pointer_expression "*(uint *********)(puVar26 + -0xc)" * (cast_expression "(uint *********)(puVar26 + -0xc)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158)" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" * (cast_expression "(undefined4 *)(puVar26 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(param_2 + 0x158)" * (cast_expression "(undefined4 *)(param_2 + 0x158)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x158)" ( (binary_expression "param_2 + 0x158" identifier + number_literal) ))))) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2c8c" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000a0800();" (call_expression "FUN_000a0800()" identifier (argument_list "()" ( ))) ;) }))) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_12c;" (assignment_expression "pppppppuVar27 = local_12c" identifier = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (binary_expression "local_120 + -0x379ae" identifier + number_literal)) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa234c;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa234c" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));" (assignment_expression "sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" identifier = (call_expression "strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" identifier (argument_list "(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" ( (pointer_expression "*(char **)(puVar26 + -0x10)" * (cast_expression "(char **)(puVar26 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar26 + -0xc)" * (cast_expression "(char **)(puVar26 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pppppppuVar29 = extraout_ECX;" (assignment_expression "pppppppuVar29 = extraout_ECX" identifier = identifier) ;) (if_statement "if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }" if (parenthesized_expression "(*(byte *)((int)pppppppuVar27 + sVar9) == 0)" ( (binary_expression "*(byte *)((int)pppppppuVar27 + sVar9) == 0" (pointer_expression "*(byte *)((int)pppppppuVar27 + sVar9)" * (cast_expression "(byte *)((int)pppppppuVar27 + sVar9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppuVar27 + sVar9)" ( (binary_expression "(int)pppppppuVar27 + sVar9" (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) == number_literal) )) (compound_statement "{\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }" { (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" identifier = (cast_expression "(uint *******)&local_84" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_84" & identifier))) ;) (expression_statement "iVar19 = *(int *)(param_2 + 0x158);" (assignment_expression "iVar19 = *(int *)(param_2 + 0x158)" identifier = (pointer_expression "*(int *)(param_2 + 0x158)" * (cast_expression "(int *)(param_2 + 0x158)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x158)" ( (binary_expression "param_2 + 0x158" identifier + number_literal) ))))) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_194 = local_7c;" (assignment_expression "local_194 = local_7c" identifier = identifier) ;) (expression_statement "local_19c = iVar19;" (assignment_expression "local_19c = iVar19" identifier = identifier) ;) (expression_statement "local_184 = local_f0;" (assignment_expression "local_184 = local_f0" identifier = identifier) ;) (expression_statement "local_84 = local_7c;" (assignment_expression "local_84 = local_7c" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3075;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3075" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "sVar9 = strlen(*(char **)(puVar26 + -0x10));" (assignment_expression "sVar9 = strlen(*(char **)(puVar26 + -0x10))" identifier = (call_expression "strlen(*(char **)(puVar26 + -0x10))" identifier (argument_list "(*(char **)(puVar26 + -0x10))" ( (pointer_expression "*(char **)(puVar26 + -0x10)" * (cast_expression "(char **)(puVar26 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) )))) ;) (expression_statement "*(undefined4 *)(puVar26 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar26 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar26 + -4)" * (cast_expression "(undefined4 *)(puVar26 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);" (assignment_expression "*(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28)" (pointer_expression "*(byte **)(puVar26 + -8)" * (cast_expression "(byte **)(puVar26 + -8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (cast_expression "(byte *)(sVar9 + (int)pppppppuVar28)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(sVar9 + (int)pppppppuVar28)" ( (binary_expression "sVar9 + (int)pppppppuVar28" identifier + (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = pppppppuVar28;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = pppppppuVar28" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_178;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_178" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3089;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3089" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004cf80();" (call_expression "FUN_0004cf80()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);" (assignment_expression "pppppppuVar22 = *(uint ********)(iVar19 + 0x4c)" identifier = (pointer_expression "*(uint ********)(iVar19 + 0x4c)" * (cast_expression "(uint ********)(iVar19 + 0x4c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(iVar19 + 0x4c)" ( (binary_expression "iVar19 + 0x4c" identifier + number_literal) ))))) ;) (expression_statement "local_98 = local_184;" (assignment_expression "local_98 = local_184" identifier = identifier) ;) (expression_statement "pppppppuVar27 = (uint *******)(iVar19 + 0x48);" (assignment_expression "pppppppuVar27 = (uint *******)(iVar19 + 0x48)" identifier = (cast_expression "(uint *******)(iVar19 + 0x48)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar19 + 0x48)" ( (binary_expression "iVar19 + 0x48" identifier + number_literal) )))) ;) (expression_statement "local_9c = param_1;" (assignment_expression "local_9c = param_1" identifier = identifier) ;) (expression_statement "local_18c = pppppppuVar27;" (assignment_expression "local_18c = pppppppuVar27" identifier = identifier) ;) (if_statement "if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }" if (parenthesized_expression "(pppppppuVar22 == (uint *******)0x0)" ( (binary_expression "pppppppuVar22 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }" { (labeled_statement "LAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;" statement_identifier : (expression_statement "*(undefined1 **)(puVar26 + -0xc) = &local_f1;" (assignment_expression "*(undefined1 **)(puVar26 + -0xc) = &local_f1" (pointer_expression "*(undefined1 **)(puVar26 + -0xc)" * (cast_expression "(undefined1 **)(puVar26 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_f1" & identifier)) ;)) (expression_statement "*(uint *********)(puVar26 + -0x10) = &local_e8;" (assignment_expression "*(uint *********)(puVar26 + -0x10) = &local_e8" (pointer_expression "*(uint *********)(puVar26 + -0x10)" * (cast_expression "(uint *********)(puVar26 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_e8" & identifier)) ;) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5" (pointer_expression "*(uint ********)(puVar26 + -0x14)" * (cast_expression "(uint ********)(puVar26 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371b5" identifier + number_literal)) ;) (expression_statement "local_e8 = local_178;" (assignment_expression "local_e8 = local_178" identifier = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x18) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar26 + -0x18) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar26 + -0x18)" * (cast_expression "(uint ********)(puVar26 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x1c) = local_19c + 0x44;" (assignment_expression "*(int *)(puVar26 + -0x1c) = local_19c + 0x44" (pointer_expression "*(int *)(puVar26 + -0x1c)" * (cast_expression "(int *)(puVar26 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = (binary_expression "local_19c + 0x44" identifier + number_literal)) ;) (expression_statement "*(uint *********)(puVar26 + -0x20) = local_100;" (assignment_expression "*(uint *********)(puVar26 + -0x20) = local_100" (pointer_expression "*(uint *********)(puVar26 + -0x20)" * (cast_expression "(uint *********)(puVar26 + -0x20)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa324d;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa324d" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" * (cast_expression "(undefined4 *)(puVar26 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000a0360();" (call_expression "FUN_000a0360()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar26 + -4;" (assignment_expression "puVar26 = puVar26 + -4" identifier = (binary_expression "puVar26 + -4" identifier + number_literal)) ;) (expression_statement "pppppppuVar27 = local_100[0];" (assignment_expression "pppppppuVar27 = local_100[0]" identifier = (subscript_expression "local_100[0]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }" else (compound_statement "{\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }" { (expression_statement "local_170 = local_84;" (assignment_expression "local_170 = local_84" identifier = identifier) ;) (expression_statement "local_174 = pppppppuVar27;" (assignment_expression "local_174 = pppppppuVar27" identifier = identifier) ;) (expression_statement "local_154 = local_80;" (assignment_expression "local_154 = local_80" identifier = identifier) ;) (labeled_statement "LAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);" statement_identifier : (do_statement "do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);" do (compound_statement "{\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    }" { (expression_statement "pppppppuVar29 = (uint *******)pppppppuVar22[5];" (assignment_expression "pppppppuVar29 = (uint *******)pppppppuVar22[5]" identifier = (cast_expression "(uint *******)pppppppuVar22[5]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[5]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar27 = local_154;" (assignment_expression "pppppppuVar27 = local_154" identifier = identifier) ;) (if_statement "if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }" if (parenthesized_expression "(pppppppuVar29 <= local_154)" ( (binary_expression "pppppppuVar29 <= local_154" identifier <= identifier) )) (compound_statement "{\n                        pppppppuVar27 = pppppppuVar29;\n                      }" { (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" identifier = identifier) ;) })) (if_statement "if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }" if (parenthesized_expression "(pppppppuVar27 == (uint *******)0x0)" ( (binary_expression "pppppppuVar27 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }" { (labeled_statement "LAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;" statement_identifier : (expression_statement "iVar19 = (int)pppppppuVar29 - (int)local_154;" (assignment_expression "iVar19 = (int)pppppppuVar29 - (int)local_154" identifier = (binary_expression "(int)pppppppuVar29 - (int)local_154" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_154" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }" else (compound_statement "{\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }" { (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_170;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_170" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];" (assignment_expression "*(uint *******)(puVar26 + -0x10) = pppppppuVar22[4]" (pointer_expression "*(uint *******)(puVar26 + -0x10)" * (cast_expression "(uint *******)(puVar26 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (subscript_expression "pppppppuVar22[4]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa310f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa310f" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));" (assignment_expression "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8))" identifier = (call_expression "memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8))" identifier (argument_list "(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8))" ( (pointer_expression "*(void **)(puVar26 + -0x10)" * (cast_expression "(void **)(puVar26 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(void **)(puVar26 + -0xc)" * (cast_expression "(void **)(puVar26 + -0xc)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(size_t *)(puVar26 + -8)" * (cast_expression "(size_t *)(puVar26 + -8)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar19 == 0) goto LAB_000a3116;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000a3116;" goto statement_identifier ;)) }))) (if_statement "if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (compound_statement "{\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }" { (expression_statement "local_174 = pppppppuVar22;" (assignment_expression "local_174 = pppppppuVar22" identifier = identifier) ;) (expression_statement "pppppppuVar22 = (uint *******)pppppppuVar22[2];" (assignment_expression "pppppppuVar22 = (uint *******)pppppppuVar22[2]" identifier = (cast_expression "(uint *******)pppppppuVar22[2]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ]))) ;) (if_statement "if (pppppppuVar22 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar22 == (uint *******)0x0)" ( (binary_expression "pppppppuVar22 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (goto_statement "goto LAB_000a30e5;" goto statement_identifier ;) })) (expression_statement "pppppppuVar22 = (uint *******)pppppppuVar22[3];" (assignment_expression "pppppppuVar22 = (uint *******)pppppppuVar22[3]" identifier = (cast_expression "(uint *******)pppppppuVar22[3]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[3]" identifier [ number_literal ]))) ;) }) while (parenthesized_expression "(pppppppuVar22 != (uint *******)0x0)" ( (binary_expression "pppppppuVar22 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) ;)) (expression_statement "pppppppuVar27 = local_174;" (assignment_expression "pppppppuVar27 = local_174" identifier = identifier) ;) (if_statement "if (local_18c == local_174) goto LAB_000a320c;" if (parenthesized_expression "(local_18c == local_174)" ( (binary_expression "local_18c == local_174" identifier == identifier) )) (goto_statement "goto LAB_000a320c;" goto statement_identifier ;)) (expression_statement "pppppppuVar22 = (uint *******)local_174[5];" (assignment_expression "pppppppuVar22 = (uint *******)local_174[5]" identifier = (cast_expression "(uint *******)local_174[5]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_174[5]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar29 = pppppppuVar22;" (assignment_expression "pppppppuVar29 = pppppppuVar22" identifier = identifier) ;) (if_statement "if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }" if (parenthesized_expression "(local_154 <= pppppppuVar22)" ( (binary_expression "local_154 <= pppppppuVar22" identifier <= identifier) )) (compound_statement "{\n                      pppppppuVar29 = local_154;\n                    }" { (expression_statement "pppppppuVar29 = local_154;" (assignment_expression "pppppppuVar29 = local_154" identifier = identifier) ;) })) (if_statement "if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }" { (labeled_statement "LAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;" statement_identifier : (expression_statement "iVar19 = (int)local_154 - (int)pppppppuVar22;" (assignment_expression "iVar19 = (int)local_154 - (int)pppppppuVar22" identifier = (binary_expression "(int)local_154 - (int)pppppppuVar22" (cast_expression "(int)local_154" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }" else (compound_statement "{\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }" { (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar26 + -0xc) = local_174[4];" (assignment_expression "*(uint *******)(puVar26 + -0xc) = local_174[4]" (pointer_expression "*(uint *******)(puVar26 + -0xc)" * (cast_expression "(uint *******)(puVar26 + -0xc)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (subscript_expression "local_174[4]" identifier [ number_literal ])) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_170;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_170" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3167;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3167" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));" (assignment_expression "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8))" identifier = (call_expression "memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8))" identifier (argument_list "(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8))" ( (pointer_expression "*(void **)(puVar26 + -0x10)" * (cast_expression "(void **)(puVar26 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(void **)(puVar26 + -0xc)" * (cast_expression "(void **)(puVar26 + -0xc)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(size_t *)(puVar26 + -8)" * (cast_expression "(size_t *)(puVar26 + -8)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar19 == 0) goto LAB_000a3174;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000a3174;" goto statement_identifier ;)) }))) (if_statement "if (iVar19 < 0) goto LAB_000a320c;" if (parenthesized_expression "(iVar19 < 0)" ( (binary_expression "iVar19 < 0" identifier < number_literal) )) (goto_statement "goto LAB_000a320c;" goto statement_identifier ;)) }))) (expression_statement "local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);" (assignment_expression "local_154 = (uint *******)((uint)local_184 ^ (uint)param_1)" identifier = (cast_expression "(uint *******)((uint)local_184 ^ (uint)param_1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_184 ^ (uint)param_1)" ( (binary_expression "(uint)local_184 ^ (uint)param_1" (cast_expression "(uint)local_184" ( (type_descriptor "uint" type_identifier) ) identifier) ^ (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier)) )))) ;) (expression_statement "pppppppuVar22 = pppppppuVar27 + 10;" (assignment_expression "pppppppuVar22 = pppppppuVar27 + 10" identifier = (binary_expression "pppppppuVar27 + 10" identifier + number_literal)) ;) (expression_statement "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);" (assignment_expression "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" identifier = (cast_expression "(uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_154 % (uint)pppppppuVar27[0xb])" ( (binary_expression "(uint)local_154 % (uint)pppppppuVar27[0xb]" (cast_expression "(uint)local_154" ( (type_descriptor "uint" type_identifier) ) identifier) % (cast_expression "(uint)pppppppuVar27[0xb]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppuVar27[0xb]" identifier [ number_literal ]))) )))) ;) (expression_statement "*(uint ********)(puVar26 + -4) = local_154;" (assignment_expression "*(uint ********)(puVar26 + -4) = local_154" (pointer_expression "*(uint ********)(puVar26 + -4)" * (cast_expression "(uint ********)(puVar26 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *********)(puVar26 + -8) = &local_9c;" (assignment_expression "*(uint *********)(puVar26 + -8) = &local_9c" (pointer_expression "*(uint *********)(puVar26 + -8)" * (cast_expression "(uint *********)(puVar26 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (pointer_expression "&local_9c" & identifier)) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_170;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_170" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa31b4;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa31b4" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_174 = pppppppuVar22;" (assignment_expression "local_174 = pppppppuVar22" identifier = identifier) ;) (expression_statement "piVar11 = (int *)FUN_0008bfc0();" (assignment_expression "piVar11 = (int *)FUN_0008bfc0()" identifier = (cast_expression "(int *)FUN_0008bfc0()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0008bfc0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }" if (parenthesized_expression "((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0))" ( (binary_expression "(piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)" (parenthesized_expression "(piVar11 == (int *)0x0)" ( (binary_expression "piVar11 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)" ( (comma_expression "pppppppuVar29 = extraout_ECX_07, *piVar11 == 0" (assignment_expression "pppppppuVar29 = extraout_ECX_07" identifier = identifier) , (binary_expression "*piVar11 == 0" (pointer_expression "*piVar11" * identifier) == number_literal)) ))) )) (compound_statement "{\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }" { (expression_statement "*(undefined4 *)(puVar26 + -0x10) = 0x10;" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = 0x10" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" * (cast_expression "(undefined4 *)(puVar26 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa32a8;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa32a8" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppppppuVar21 = (uint ******)FUN_0017ebf0();" (assignment_expression "ppppppuVar21 = (uint ******)FUN_0017ebf0()" identifier = (cast_expression "(uint ******)FUN_0017ebf0()" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "FUN_0017ebf0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*ppppppuVar21 = (uint *****)0x0;" (assignment_expression "*ppppppuVar21 = (uint *****)0x0" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[1] = (uint *****)param_1;" (assignment_expression "ppppppuVar21[1] = (uint *****)param_1" (subscript_expression "ppppppuVar21[1]" identifier [ number_literal ]) = (cast_expression "(uint *****)param_1" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "ppppppuVar21[2] = (uint *****)local_184;" (assignment_expression "ppppppuVar21[2] = (uint *****)local_184" (subscript_expression "ppppppuVar21[2]" identifier [ number_literal ]) = (cast_expression "(uint *****)local_184" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "local_e4 = pppppppuVar27[0xf];" (assignment_expression "local_e4 = pppppppuVar27[0xf]" identifier = (subscript_expression "pppppppuVar27[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" * (cast_expression "(undefined4 *)(puVar26 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];" (assignment_expression "*(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd]" (pointer_expression "*(uint *******)(puVar26 + -0x14)" * (cast_expression "(uint *******)(puVar26 + -0x14)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = (subscript_expression "pppppppuVar27[0xd]" identifier [ number_literal ])) ;) (expression_statement "*(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];" (assignment_expression "*(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb]" (pointer_expression "*(uint *******)(puVar26 + -0x18)" * (cast_expression "(uint *******)(puVar26 + -0x18)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = (subscript_expression "pppppppuVar27[0xb]" identifier [ number_literal ])) ;) (expression_statement "*(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;" (assignment_expression "*(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe" (pointer_expression "*(uint ********)(puVar26 + -0x1c)" * (cast_expression "(uint ********)(puVar26 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = (binary_expression "pppppppuVar27 + 0xe" identifier + number_literal)) ;) (expression_statement "*(char **)(puVar26 + -0x20) = local_10c;" (assignment_expression "*(char **)(puVar26 + -0x20) = local_10c" (pointer_expression "*(char **)(puVar26 + -0x20)" * (cast_expression "(char **)(puVar26 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa32eb;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa32eb" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" * (cast_expression "(undefined4 *)(puVar26 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001c5e50();" (call_expression "FUN_001c5e50()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_09;" (assignment_expression "pppppppuVar29 = extraout_ECX_09" identifier = identifier) ;) (if_statement "if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }" if (parenthesized_expression "(local_10c[0] != '\0')" ( (binary_expression "local_10c[0] != '\0'" (subscript_expression "local_10c[0]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }" { (expression_statement "*(uint ********)(puVar26 + -0xc) = &local_e4;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = &local_e4" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_e4" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x10) = local_108;" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = local_108" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" * (cast_expression "(undefined4 *)(puVar26 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_174;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_174" (pointer_expression "*(uint ********)(puVar26 + -0x14)" * (cast_expression "(uint ********)(puVar26 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar26 + -0x18) = 0xa3696;" (assignment_expression "*(undefined4 *)(puVar26 + -0x18) = 0xa3696" (pointer_expression "*(undefined4 *)(puVar26 + -0x18)" * (cast_expression "(undefined4 *)(puVar26 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0008f5f0();" (call_expression "FUN_0008f5f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);" (assignment_expression "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" identifier = (cast_expression "(uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_154 % (uint)pppppppuVar27[0xb])" ( (binary_expression "(uint)local_154 % (uint)pppppppuVar27[0xb]" (cast_expression "(uint)local_154" ( (type_descriptor "uint" type_identifier) ) identifier) % (cast_expression "(uint)pppppppuVar27[0xb]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppuVar27[0xb]" identifier [ number_literal ]))) )))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_12;" (assignment_expression "pppppppuVar29 = extraout_ECX_12" identifier = identifier) ;) })) (expression_statement "puVar26 = puVar26 + -4;" (assignment_expression "puVar26 = puVar26 + -4" identifier = (binary_expression "puVar26 + -4" identifier + number_literal)) ;) (expression_statement "ppppppuVar21[3] = (uint *****)local_154;" (assignment_expression "ppppppuVar21[3] = (uint *****)local_154" (subscript_expression "ppppppuVar21[3]" identifier [ number_literal ]) = (cast_expression "(uint *****)local_154" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "pppppppuVar22 = (uint *******)((int)local_170 * 4);" (assignment_expression "pppppppuVar22 = (uint *******)((int)local_170 * 4)" identifier = (cast_expression "(uint *******)((int)local_170 * 4)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_170 * 4)" ( (binary_expression "(int)local_170 * 4" (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }" if (parenthesized_expression "(pppppppuVar27[10][(int)local_170] == (uint *****)0x0)" ( (binary_expression "pppppppuVar27[10][(int)local_170] == (uint *****)0x0" (subscript_expression "pppppppuVar27[10][(int)local_170]" (subscript_expression "pppppppuVar27[10]" identifier [ number_literal ]) [ (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }" { (expression_statement "*ppppppuVar21 = (uint *****)pppppppuVar27[0xc];" (assignment_expression "*ppppppuVar21 = (uint *****)pppppppuVar27[0xc]" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)pppppppuVar27[0xc]" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (subscript_expression "pppppppuVar27[0xc]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar29 = (uint *******)pppppppuVar27[10];" (assignment_expression "pppppppuVar29 = (uint *******)pppppppuVar27[10]" identifier = (cast_expression "(uint *******)pppppppuVar27[10]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar27[10]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar27[0xc] = ppppppuVar21;" (assignment_expression "pppppppuVar27[0xc] = ppppppuVar21" (subscript_expression "pppppppuVar27[0xc]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }" if (parenthesized_expression "(*ppppppuVar21 != (uint *****)0x0)" ( (binary_expression "*ppppppuVar21 != (uint *****)0x0" (pointer_expression "*ppppppuVar21" * identifier) != (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }" { (expression_statement "pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;" (assignment_expression "pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21" (subscript_expression "pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]]" identifier [ (binary_expression "(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]" (subscript_expression "(uint)(*ppppppuVar21)[3]" (call_expression "(uint)(*ppppppuVar21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*ppppppuVar21)" ( (pointer_expression "*ppppppuVar21" * identifier) ))) [ number_literal ]) % (cast_expression "(uint)pppppppuVar27[0xb]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppuVar27[0xb]" identifier [ number_literal ]))) ]) = identifier) ;) })) (expression_statement "pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);" (assignment_expression "pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc)" (subscript_expression "pppppppuVar29[(int)local_170]" identifier [ (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint ******)(pppppppuVar27 + 0xc)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(pppppppuVar27 + 0xc)" ( (binary_expression "pppppppuVar27 + 0xc" identifier + number_literal) )))) ;) }) (else_clause "else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }" else (compound_statement "{\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }" { (expression_statement "*ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];" (assignment_expression "*ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170]" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)*pppppppuVar27[10][(int)local_170]" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "*pppppppuVar27[10][(int)local_170]" * (subscript_expression "pppppppuVar27[10][(int)local_170]" (subscript_expression "pppppppuVar27[10]" identifier [ number_literal ]) [ (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) ])))) ;) (expression_statement "*pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;" (assignment_expression "*pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21" (pointer_expression "*pppppppuVar27[10][(int)local_170]" * (subscript_expression "pppppppuVar27[10][(int)local_170]" (subscript_expression "pppppppuVar27[10]" identifier [ number_literal ]) [ (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) ])) = (cast_expression "(uint ****)ppppppuVar21" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;) }))) (expression_statement "pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);" (assignment_expression "pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1)" (subscript_expression "pppppppuVar27[0xd]" identifier [ number_literal ]) = (cast_expression "(uint ******)((int)pppppppuVar27[0xd] + 1)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)pppppppuVar27[0xd] + 1)" ( (binary_expression "(int)pppppppuVar27[0xd] + 1" (cast_expression "(int)pppppppuVar27[0xd]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar27[0xd]" identifier [ number_literal ])) + number_literal) )))) ;) })) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;) (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" identifier = identifier) ;) (if_statement "if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }" if (parenthesized_expression "(local_84 != local_194)" ( (binary_expression "local_84 != local_194" identifier != identifier) )) (compound_statement "{\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }" { (expression_statement "*(uint ********)(puVar26 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa31e7;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa31e7" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_08;" (assignment_expression "pppppppuVar29 = extraout_ECX_08" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) })) })) })) })) (if_statement "if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" if (parenthesized_expression "(((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4))))" ( (binary_expression "((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))" (parenthesized_expression "((char)local_14c == '\0')" ( (binary_expression "(char)local_14c == '\0'" (cast_expression "(char)local_14c" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))" ( (parenthesized_expression "(local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4))" ( (binary_expression "local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)" (binary_expression "local_124 != (uint *******)0x9" identifier != (cast_expression "(uint *******)0x9" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) && (parenthesized_expression "(local_124 != (uint *******)0x4)" ( (binary_expression "local_124 != (uint *******)0x4" identifier != (cast_expression "(uint *******)0x4" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ))) )) ))) )) (compound_statement "{\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }" { (if_statement "if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }" if (parenthesized_expression "((local_124 != (uint *******)0x11) || ((char)local_140 == '\0'))" ( (binary_expression "(local_124 != (uint *******)0x11) || ((char)local_140 == '\0')" (parenthesized_expression "(local_124 != (uint *******)0x11)" ( (binary_expression "local_124 != (uint *******)0x11" identifier != (cast_expression "(uint *******)0x11" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) || (parenthesized_expression "((char)local_140 == '\0')" ( (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }" { (expression_statement "local_154 = (uint *******)&local_ec;" (assignment_expression "local_154 = (uint *******)&local_ec" identifier = (cast_expression "(uint *******)&local_ec" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_ec" & identifier))) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_154;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_154" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa29c8;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa29c8" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_000964f0();" (assignment_expression "cVar7 = FUN_000964f0()" identifier = (call_expression "FUN_000964f0()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "bVar35 = cVar7 == '\0';" (assignment_expression "bVar35 = cVar7 == '\0'" identifier = (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_03;" (assignment_expression "pppppppuVar29 = extraout_ECX_03" identifier = identifier) ;) (if_statement "if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }" if (parenthesized_expression "(!bVar35)" ( (unary_expression "!bVar35" ! identifier) )) (compound_statement "{\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }" { (expression_statement "pppppppuVar29 = (uint *******)0xa;" (assignment_expression "pppppppuVar29 = (uint *******)0xa" identifier = (cast_expression "(uint *******)0xa" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdef3a);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdef3a)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdef3a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdef3a)" ( (binary_expression "(int)local_120 + -0xdef3a" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);" do (compound_statement "{\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar28 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar35)" ( identifier )) ;) (if_statement "if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }" if (parenthesized_expression "((!bVar33 && !bVar35) == bVar33)" ( (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" ( (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" ! identifier) && (unary_expression "!bVar35" ! identifier)) )) == identifier) )) (compound_statement "{\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }" { (if_statement "if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }" if (parenthesized_expression "((char)local_140 == '\0')" ( (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }" { (if_statement "if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }" if (parenthesized_expression "(local_136 == '\0')" ( (binary_expression "local_136 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }" { (if_statement "if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }" if (parenthesized_expression "(*(byte *)((int)param_1 + 0x11d) == 0)" ( (binary_expression "*(byte *)((int)param_1 + 0x11d) == 0" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" * (cast_expression "(byte *)((int)param_1 + 0x11d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x11d)" ( (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }" { (if_statement "if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }" if (parenthesized_expression "(local_d0 == local_cc)" ( (binary_expression "local_d0 == local_cc" identifier == identifier) )) (compound_statement "{\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }" { (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" * (cast_expression "(uint *********)(puVar24 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (pointer_expression "&local_f0" & identifier)) ;) (expression_statement "*(int **)(puVar24 + -0xc) = local_d0;" (assignment_expression "*(int **)(puVar24 + -0xc) = local_d0" (pointer_expression "*(int **)(puVar24 + -0xc)" * (cast_expression "(int **)(puVar24 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" identifier = (binary_expression "puVar24 + -0x10" identifier + number_literal)) ;) (expression_statement "*(int ***)(puVar24 + -0x10) = &local_d4;" (assignment_expression "*(int ***)(puVar24 + -0x10) = &local_d4" (pointer_expression "*(int ***)(puVar24 + -0x10)" * (cast_expression "(int ***)(puVar24 + -0x10)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_d4" & identifier)) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa426e;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa426e" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_29;" (assignment_expression "pppppppuVar29 = extraout_ECX_29" identifier = identifier) ;) (goto_statement "goto LAB_000a3e57;" goto statement_identifier ;) })) (expression_statement "*local_d0 = (int)local_f0;" (assignment_expression "*local_d0 = (int)local_f0" (pointer_expression "*local_d0" * identifier) = (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_d0 = local_d0 + 1;" (assignment_expression "local_d0 = local_d0 + 1" identifier = (binary_expression "local_d0 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }" else (compound_statement "{\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }" { (expression_statement "pppppppuVar22 = (uint *******)local_15c[(int)local_f0];" (assignment_expression "pppppppuVar22 = (uint *******)local_15c[(int)local_f0]" identifier = (cast_expression "(uint *******)local_15c[(int)local_f0]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_15c[(int)local_f0]" identifier [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]))) ;) (expression_statement "local_124 = param_1 + 0x48;" (assignment_expression "local_124 = param_1 + 0x48" identifier = (binary_expression "param_1 + 0x48" identifier + number_literal)) ;) (expression_statement "uVar12 = local_158[(int)local_f0];" (assignment_expression "uVar12 = local_158[(int)local_f0]" identifier = (subscript_expression "local_158[(int)local_f0]" identifier [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" identifier = (cast_expression "(uint *******)&local_84" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_84" & identifier))) ;) (expression_statement "*(undefined4 *)(puVar24 + -4) = 0xa2a5f;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0xa2a5f" (pointer_expression "*(undefined4 *)(puVar24 + -4)" * (cast_expression "(undefined4 *)(puVar24 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000926b0();" (call_expression "FUN_000926b0()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_6c = pppppppuVar27;" (assignment_expression "local_6c = pppppppuVar27" identifier = identifier) ;) (expression_statement "local_60 = *local_134;" (assignment_expression "local_60 = *local_134" identifier = (pointer_expression "*local_134" * identifier)) ;) (expression_statement "local_58 = local_134[2];" (assignment_expression "local_58 = local_134[2]" identifier = (subscript_expression "local_134[2]" identifier [ number_literal ])) ;) (expression_statement "local_54 = local_134[3];" (assignment_expression "local_54 = local_134[3]" identifier = (subscript_expression "local_134[3]" identifier [ number_literal ])) ;) (expression_statement "local_50 = local_134[4];" (assignment_expression "local_50 = local_134[4]" identifier = (subscript_expression "local_134[4]" identifier [ number_literal ])) ;) (expression_statement "local_4c = local_134[5];" (assignment_expression "local_4c = local_134[5]" identifier = (subscript_expression "local_134[5]" identifier [ number_literal ])) ;) (expression_statement "local_48 = local_134[6];" (assignment_expression "local_48 = local_134[6]" identifier = (subscript_expression "local_134[6]" identifier [ number_literal ])) ;) (expression_statement "local_44 = local_134[7];" (assignment_expression "local_44 = local_134[7]" identifier = (subscript_expression "local_134[7]" identifier [ number_literal ])) ;) (expression_statement "local_40 = local_134[8];" (assignment_expression "local_40 = local_134[8]" identifier = (subscript_expression "local_134[8]" identifier [ number_literal ])) ;) (expression_statement "local_3c = local_134[9];" (assignment_expression "local_3c = local_134[9]" identifier = (subscript_expression "local_134[9]" identifier [ number_literal ])) ;) (expression_statement "local_38 = local_134[10];" (assignment_expression "local_38 = local_134[10]" identifier = (subscript_expression "local_134[10]" identifier [ number_literal ])) ;) (expression_statement "local_34 = local_134[0xb];" (assignment_expression "local_34 = local_134[0xb]" identifier = (subscript_expression "local_134[0xb]" identifier [ number_literal ])) ;) (expression_statement "local_30 = local_134[0xc];" (assignment_expression "local_30 = local_134[0xc]" identifier = (subscript_expression "local_134[0xc]" identifier [ number_literal ])) ;) (expression_statement "local_2c = local_134[0xd];" (assignment_expression "local_2c = local_134[0xd]" identifier = (subscript_expression "local_134[0xd]" identifier [ number_literal ])) ;) (expression_statement "local_28 = local_134[0xe];" (assignment_expression "local_28 = local_134[0xe]" identifier = (subscript_expression "local_134[0xe]" identifier [ number_literal ])) ;) (expression_statement "local_24 = local_134[0xf];" (assignment_expression "local_24 = local_134[0xf]" identifier = (subscript_expression "local_134[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_5c = local_198;" (assignment_expression "local_5c = local_198" identifier = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2aea;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2aea" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_68 = uVar12;" (assignment_expression "local_68 = uVar12" identifier = identifier) ;) (expression_statement "local_64 = pppppppuVar22;" (assignment_expression "local_64 = pppppppuVar22" identifier = identifier) ;) (expression_statement "FUN_000a10f0();" (call_expression "FUN_000a10f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar28 = local_120;" (assignment_expression "pppppppuVar28 = local_120" identifier = identifier) ;) (expression_statement "pppppppuVar29 = extraout_ECX_04;" (assignment_expression "pppppppuVar29 = extraout_ECX_04" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) (if_statement "if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }" if (parenthesized_expression "(local_84 != local_7c)" ( (binary_expression "local_84 != local_7c" identifier != identifier) )) (compound_statement "{\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2b0a" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_05;" (assignment_expression "pppppppuVar29 = extraout_ECX_05" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar28;" (assignment_expression "pppppppuVar22 = pppppppuVar28" identifier = identifier) ;) })) }))) }) (else_clause "else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }" else (compound_statement "{\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }" { (expression_statement "param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);" (assignment_expression "param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1)" (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1)" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (parenthesized_expression "((*(byte *)((int)param_1 + 0x11d) != 0) + 1)" ( (binary_expression "(*(byte *)((int)param_1 + 0x11d) != 0) + 1" (parenthesized_expression "(*(byte *)((int)param_1 + 0x11d) != 0)" ( (binary_expression "*(byte *)((int)param_1 + 0x11d) != 0" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" * (cast_expression "(byte *)((int)param_1 + 0x11d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x11d)" ( (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != number_literal) )) + number_literal) )))) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" identifier [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" identifier [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) }))) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) (expression_statement "local_124 = local_198;" (assignment_expression "local_124 = local_198" identifier = identifier) ;) })) })) (expression_statement "puVar23 = puVar24;" (assignment_expression "puVar23 = puVar24" identifier = identifier) ;) (if_statement "if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }" { (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" identifier = (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }" if (parenthesized_expression "((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0))" ( (binary_expression "(*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)" (parenthesized_expression "(*(byte *)((int)param_1 + 0x11d) == 0)" ( (binary_expression "*(byte *)((int)param_1 + 0x11d) == 0" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" * (cast_expression "(byte *)((int)param_1 + 0x11d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x11d)" ( (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == number_literal) )) || (parenthesized_expression "(((uint)local_ec[2] & 2) == 0)" ( (binary_expression "((uint)local_ec[2] & 2) == 0" (parenthesized_expression "((uint)local_ec[2] & 2)" ( (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }" { (if_statement "if (local_136 == '\0') goto LAB_000a2d10;" if (parenthesized_expression "(local_136 == '\0')" ( (binary_expression "local_136 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a2d10;" goto statement_identifier ;)) (labeled_statement "LAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;" statement_identifier : (expression_statement "*(undefined4 *)((int)param_1[0xe] + iVar19) = 1;" (assignment_expression "*(undefined4 *)((int)param_1[0xe] + iVar19) = 1" (pointer_expression "*(undefined4 *)((int)param_1[0xe] + iVar19)" * (cast_expression "(undefined4 *)((int)param_1[0xe] + iVar19)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1[0xe] + iVar19)" ( (binary_expression "(int)param_1[0xe] + iVar19" (cast_expression "(int)param_1[0xe]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xe]" identifier [ number_literal ])) + identifier) )))) = number_literal) ;)) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" identifier [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" identifier [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "puVar24 = puVar23;" (assignment_expression "puVar24 = puVar23" identifier = identifier) ;) }) (else_clause "else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }" else (compound_statement "{\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }" { (expression_statement "local_170 = (uint *******)local_15c[(int)local_f0];" (assignment_expression "local_170 = (uint *******)local_15c[(int)local_f0]" identifier = (cast_expression "(uint *******)local_15c[(int)local_f0]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_15c[(int)local_f0]" identifier [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]))) ;) (expression_statement "uVar12 = local_158[(int)local_f0];" (assignment_expression "uVar12 = local_158[(int)local_f0]" identifier = (subscript_expression "local_158[(int)local_f0]" identifier [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "local_154 = param_1 + 0x48;" (assignment_expression "local_154 = param_1 + 0x48" identifier = (binary_expression "param_1 + 0x48" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -4) = 0xa3ea6;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0xa3ea6" (pointer_expression "*(undefined4 *)(puVar24 + -4)" * (cast_expression "(undefined4 *)(puVar24 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000926b0();" (call_expression "FUN_000926b0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar22 = local_124;" (assignment_expression "pppppppuVar22 = local_124" identifier = identifier) ;) (expression_statement "local_6c = pppppppuVar27;" (assignment_expression "local_6c = pppppppuVar27" identifier = identifier) ;) (expression_statement "local_64 = local_170;" (assignment_expression "local_64 = local_170" identifier = identifier) ;) (expression_statement "local_60 = *local_134;" (assignment_expression "local_60 = *local_134" identifier = (pointer_expression "*local_134" * identifier)) ;) (expression_statement "local_58 = local_134[2];" (assignment_expression "local_58 = local_134[2]" identifier = (subscript_expression "local_134[2]" identifier [ number_literal ])) ;) (expression_statement "local_54 = local_134[3];" (assignment_expression "local_54 = local_134[3]" identifier = (subscript_expression "local_134[3]" identifier [ number_literal ])) ;) (expression_statement "local_50 = local_134[4];" (assignment_expression "local_50 = local_134[4]" identifier = (subscript_expression "local_134[4]" identifier [ number_literal ])) ;) (expression_statement "local_4c = local_134[5];" (assignment_expression "local_4c = local_134[5]" identifier = (subscript_expression "local_134[5]" identifier [ number_literal ])) ;) (expression_statement "local_48 = local_134[6];" (assignment_expression "local_48 = local_134[6]" identifier = (subscript_expression "local_134[6]" identifier [ number_literal ])) ;) (expression_statement "local_44 = local_134[7];" (assignment_expression "local_44 = local_134[7]" identifier = (subscript_expression "local_134[7]" identifier [ number_literal ])) ;) (expression_statement "local_40 = local_134[8];" (assignment_expression "local_40 = local_134[8]" identifier = (subscript_expression "local_134[8]" identifier [ number_literal ])) ;) (expression_statement "local_3c = local_134[9];" (assignment_expression "local_3c = local_134[9]" identifier = (subscript_expression "local_134[9]" identifier [ number_literal ])) ;) (expression_statement "local_38 = local_134[10];" (assignment_expression "local_38 = local_134[10]" identifier = (subscript_expression "local_134[10]" identifier [ number_literal ])) ;) (expression_statement "local_34 = local_134[0xb];" (assignment_expression "local_34 = local_134[0xb]" identifier = (subscript_expression "local_134[0xb]" identifier [ number_literal ])) ;) (expression_statement "local_30 = local_134[0xc];" (assignment_expression "local_30 = local_134[0xc]" identifier = (subscript_expression "local_134[0xc]" identifier [ number_literal ])) ;) (expression_statement "local_2c = local_134[0xd];" (assignment_expression "local_2c = local_134[0xd]" identifier = (subscript_expression "local_134[0xd]" identifier [ number_literal ])) ;) (expression_statement "local_28 = local_134[0xe];" (assignment_expression "local_28 = local_134[0xe]" identifier = (subscript_expression "local_134[0xe]" identifier [ number_literal ])) ;) (expression_statement "local_24 = local_134[0xf];" (assignment_expression "local_24 = local_134[0xf]" identifier = (subscript_expression "local_134[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(uint *********)(puVar24 + -0xc) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0xc) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0xc)" * (cast_expression "(uint *********)(puVar24 + -0xc)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_154;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_154" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_5c = local_124;" (assignment_expression "local_5c = local_124" identifier = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3f32;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3f32" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_68 = uVar12;" (assignment_expression "local_68 = uVar12" identifier = identifier) ;) (expression_statement "FUN_000a10f0();" (call_expression "FUN_000a10f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;) (expression_statement "pppppppuVar29 = extraout_ECX_22;" (assignment_expression "pppppppuVar29 = extraout_ECX_22" identifier = identifier) ;) (if_statement "if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }" if (parenthesized_expression "(local_84 != local_7c)" ( (binary_expression "local_84 != local_7c" identifier != identifier) )) (compound_statement "{\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3f4e" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_23;" (assignment_expression "pppppppuVar29 = extraout_ECX_23" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) })) (expression_statement "param_1[0xe][(int)local_f0] = (uint *****)0x2;" (assignment_expression "param_1[0xe][(int)local_f0] = (uint *****)0x2" (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)0x2" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" identifier [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" identifier [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) }))) }) (else_clause "else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }" else (compound_statement "{\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }" { (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" identifier = (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4330;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4330" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" identifier = (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pppppuVar18 = param_1[0xe][(int)local_f0];" (assignment_expression "pppppuVar18 = param_1[0xe][(int)local_f0]" identifier = (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "pppppppuVar29 = param_1;" (assignment_expression "pppppppuVar29 = param_1" identifier = identifier) ;) (if_statement "if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }" if (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x18b1) == '\0')" ( (binary_expression "*(char *)((int)pppppuVar15 + 0x18b1) == '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x18b1)" * (cast_expression "(char *)((int)pppppuVar15 + 0x18b1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x18b1)" ( (binary_expression "(int)pppppuVar15 + 0x18b1" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }" { (labeled_statement "LAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }" statement_identifier : (if_statement "if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }" if (parenthesized_expression "(pppppuVar15[0x164d] != (uint ****)0x0)" ( (binary_expression "pppppuVar15[0x164d] != (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" identifier [ number_literal ]) != (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }" { (if_statement "if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }" if (parenthesized_expression "(pppppuVar18 == (uint *****)0x0)" ( (binary_expression "pppppuVar18 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }" { (expression_statement "uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];" (assignment_expression "uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2]" identifier = (binary_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2]" (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[0x21][(int)local_f0 * 2 + 1]" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ])) & (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[0x21][(int)local_f0 * 2]" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ])))) ;) (expression_statement "pppppppuVar29 = local_ec;" (assignment_expression "pppppppuVar29 = local_ec" identifier = identifier) ;) (expression_statement "puVar24 = puVar23;" (assignment_expression "puVar24 = puVar23" identifier = identifier) ;) (if_statement "if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }" if (parenthesized_expression "(uVar10 != 0xffffffff)" ( (binary_expression "uVar10 != 0xffffffff" identifier != number_literal) )) (compound_statement "{\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }" { (expression_statement "*(uint *)(puVar23 + -4) = uVar10;" (assignment_expression "*(uint *)(puVar23 + -4) = uVar10" (pointer_expression "*(uint *)(puVar23 + -4)" * (cast_expression "(uint *)(puVar23 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -4)" ( (binary_expression "puVar23 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -8) = local_120 + -0x373b3;" (assignment_expression "*(uint ********)(puVar23 + -8) = local_120 + -0x373b3" (pointer_expression "*(uint ********)(puVar23 + -8)" * (cast_expression "(uint ********)(puVar23 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -8)" ( (binary_expression "puVar23 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = 0x6f9;" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = 0x6f9" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" * (cast_expression "(undefined4 *)(puVar23 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2" (pointer_expression "*(uint ********)(puVar23 + -0x10)" * (cast_expression "(uint ********)(puVar23 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x375d2" identifier + number_literal)) ;) comment (expression_statement "*(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;" (assignment_expression "*(undefined **)(puVar23 + -0x14) = &UNK_000a2f61" (pointer_expression "*(undefined **)(puVar23 + -0x14)" * (cast_expression "(undefined **)(puVar23 + -0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = (pointer_expression "&UNK_000a2f61" & identifier)) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) (labeled_statement "LAB_000a2cf0:\n                      pppppppuVar27 = local_120;" statement_identifier : (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;)) (expression_statement "pppppppuVar29 = local_ec;" (assignment_expression "pppppppuVar29 = local_ec" identifier = identifier) ;) (if_statement "if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }" if (parenthesized_expression "(((uint)local_ec[2] & 2) != 0)" ( (binary_expression "((uint)local_ec[2] & 2) != 0" (parenthesized_expression "((uint)local_ec[2] & 2)" ( (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) & number_literal) )) != number_literal) )) (compound_statement "{\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }" { (expression_statement "*(uint ********)(puVar23 + -8) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -8) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -8)" * (cast_expression "(uint ********)(puVar23 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -8)" ( (binary_expression "puVar23 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0xc) = param_1;" (assignment_expression "*(uint ********)(puVar23 + -0xc) = param_1" (pointer_expression "*(uint ********)(puVar23 + -0xc)" * (cast_expression "(uint ********)(puVar23 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);" (assignment_expression "*(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c)" (pointer_expression "*(undefined4 *)(puVar23 + -0x10)" * (cast_expression "(undefined4 *)(puVar23 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(param_2 + 0x15c)" * (cast_expression "(undefined4 *)(param_2 + 0x15c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x15c)" ( (binary_expression "param_2 + 0x15c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;" (assignment_expression "*(undefined4 *)(puVar23 + -0x14) = 0xa3ddb" (pointer_expression "*(undefined4 *)(puVar23 + -0x14)" * (cast_expression "(undefined4 *)(puVar23 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_00062560();" (assignment_expression "cVar7 = FUN_00062560()" identifier = (call_expression "FUN_00062560()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) (if_statement "if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }" if (parenthesized_expression "(cVar7 != '\0')" ( (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }" { (expression_statement "*(int *)(puVar23 + -4) = iVar19;" (assignment_expression "*(int *)(puVar23 + -4) = iVar19" (pointer_expression "*(int *)(puVar23 + -4)" * (cast_expression "(int *)(puVar23 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -4)" ( (binary_expression "puVar23 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar23 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar23 + -8)" * (cast_expression "(uint ********)(puVar23 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -8)" ( (binary_expression "puVar23 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" * (cast_expression "(undefined4 *)(puVar23 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar23 + -0x10)" * (cast_expression "(uint ********)(puVar23 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) comment comment (expression_statement "*(undefined4 *)(puVar23 + -0x14) = 0xa44a9;" (assignment_expression "*(undefined4 *)(puVar23 + -0x14) = 0xa44a9" (pointer_expression "*(undefined4 *)(puVar23 + -0x14)" * (cast_expression "(undefined4 *)(puVar23 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "pppppppuVar29 = extraout_ECX_20;" (assignment_expression "pppppppuVar29 = extraout_ECX_20" identifier = identifier) ;) (expression_statement "puVar26 = puVar23;" (assignment_expression "puVar26 = puVar23" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }" if (parenthesized_expression "(*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0')" ( (binary_expression "*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x2ed1)" * (cast_expression "(char *)((int)(*local_13c)[2] + 0x2ed1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(*local_13c)[2] + 0x2ed1)" ( (binary_expression "(int)(*local_13c)[2] + 0x2ed1" (cast_expression "(int)(*local_13c)[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }" { (expression_statement "*(uint ********)(puVar23 + -4) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -4) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -4)" * (cast_expression "(uint ********)(puVar23 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -4)" ( (binary_expression "puVar23 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -8) = param_1;" (assignment_expression "*(uint ********)(puVar23 + -8) = param_1" (pointer_expression "*(uint ********)(puVar23 + -8)" * (cast_expression "(uint ********)(puVar23 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -8)" ( (binary_expression "puVar23 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c)" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" * (cast_expression "(undefined4 *)(puVar23 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(param_2 + 0x15c)" * (cast_expression "(undefined4 *)(param_2 + 0x15c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x15c)" ( (binary_expression "param_2 + 0x15c" identifier + number_literal) ))))) ;) (expression_statement "*(int ***)(puVar23 + -0x10) = &local_11c;" (assignment_expression "*(int ***)(puVar23 + -0x10) = &local_11c" (pointer_expression "*(int ***)(puVar23 + -0x10)" * (cast_expression "(int ***)(puVar23 + -0x10)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_11c" & identifier)) ;) comment (expression_statement "*(undefined4 *)(puVar23 + -0x14) = 0xa4081;" (assignment_expression "*(undefined4 *)(puVar23 + -0x14) = 0xa4081" (pointer_expression "*(undefined4 *)(puVar23 + -0x14)" * (cast_expression "(undefined4 *)(puVar23 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000625c0();" (call_expression "FUN_000625c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar19 = *local_11c;" (assignment_expression "iVar19 = *local_11c" identifier = (pointer_expression "*local_11c" * identifier)) ;) (expression_statement "iVar5 = local_11c[1];" (assignment_expression "iVar5 = local_11c[1]" identifier = (subscript_expression "local_11c[1]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = local_118;" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = local_118" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" * (cast_expression "(undefined4 *)(puVar23 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar23 + -0x10) = local_11c;" (assignment_expression "*(int **)(puVar23 + -0x10) = local_11c" (pointer_expression "*(int **)(puVar23 + -0x10)" * (cast_expression "(int **)(puVar23 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *********)(puVar23 + -0x14) = &local_84;" (assignment_expression "*(uint *********)(puVar23 + -0x14) = &local_84" (pointer_expression "*(uint *********)(puVar23 + -0x14)" * (cast_expression "(uint *********)(puVar23 + -0x14)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "pcVar6 = *(code **)(iVar19 + 0x40);" (assignment_expression "pcVar6 = *(code **)(iVar19 + 0x40)" identifier = (pointer_expression "*(code **)(iVar19 + 0x40)" * (cast_expression "(code **)(iVar19 + 0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar19 + 0x40)" ( (binary_expression "iVar19 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x18) = 0xa409e;" (assignment_expression "*(undefined4 *)(puVar23 + -0x18) = 0xa409e" (pointer_expression "*(undefined4 *)(puVar23 + -0x18)" * (cast_expression "(undefined4 *)(puVar23 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x18)" ( (binary_expression "puVar23 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar6)();" (call_expression "(*pcVar6)()" (parenthesized_expression "(*pcVar6)" ( (pointer_expression "*pcVar6" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = local_84;" (assignment_expression "pppppppuVar29 = local_84" identifier = identifier) ;) (expression_statement "local_12c = (uint *******)param_1[1];" (assignment_expression "local_12c = (uint *******)param_1[1]" identifier = (cast_expression "(uint *******)param_1[1]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[1]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22 = (uint *******)(*param_1)[0x10];" (assignment_expression "pppppppuVar22 = (uint *******)(*param_1)[0x10]" identifier = (cast_expression "(uint *******)(*param_1)[0x10]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "(*param_1)[0x10]" (parenthesized_expression "(*param_1)" ( (pointer_expression "*param_1" * identifier) )) [ number_literal ]))) ;) (if_statement "if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }" if (parenthesized_expression "(pppppppuVar22 == local_120 + -0x99678)" ( (binary_expression "pppppppuVar22 == local_120 + -0x99678" identifier == (binary_expression "local_120 + -0x99678" identifier + number_literal)) )) (compound_statement "{\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }" { (expression_statement "*(uint ********)(puVar23 + -0x10) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -0x10)" * (cast_expression "(uint ********)(puVar23 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x14) = param_1 + 0x24;" (assignment_expression "*(uint ********)(puVar23 + -0x14) = param_1 + 0x24" (pointer_expression "*(uint ********)(puVar23 + -0x14)" * (cast_expression "(uint ********)(puVar23 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = (binary_expression "param_1 + 0x24" identifier + number_literal)) ;) (expression_statement "*(uint *********)(puVar23 + -0x18) = &local_9c;" (assignment_expression "*(uint *********)(puVar23 + -0x18) = &local_9c" (pointer_expression "*(uint *********)(puVar23 + -0x18)" * (cast_expression "(uint *********)(puVar23 + -0x18)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar23 + -0x18)" ( (binary_expression "puVar23 + -0x18" identifier + number_literal) )))) = (pointer_expression "&local_9c" & identifier)) ;) comment (expression_statement "*(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;" (assignment_expression "*(undefined4 *)(puVar23 + -0x1c) = 0xa40ec" (pointer_expression "*(undefined4 *)(puVar23 + -0x1c)" * (cast_expression "(undefined4 *)(puVar23 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004e830();" (call_expression "FUN_0004e830()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }" else (compound_statement "{\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }" { (expression_statement "*(uint ********)(puVar23 + -0x10) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -0x10)" * (cast_expression "(uint ********)(puVar23 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x14) = param_1;" (assignment_expression "*(uint ********)(puVar23 + -0x14) = param_1" (pointer_expression "*(uint ********)(puVar23 + -0x14)" * (cast_expression "(uint ********)(puVar23 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *********)(puVar23 + -0x18) = &local_9c;" (assignment_expression "*(uint *********)(puVar23 + -0x18) = &local_9c" (pointer_expression "*(uint *********)(puVar23 + -0x18)" * (cast_expression "(uint *********)(puVar23 + -0x18)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar23 + -0x18)" ( (binary_expression "puVar23 + -0x18" identifier + number_literal) )))) = (pointer_expression "&local_9c" & identifier)) ;) comment (expression_statement "*(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;" (assignment_expression "*(undefined4 *)(puVar23 + -0x1c) = 0xa42b7" (pointer_expression "*(undefined4 *)(puVar23 + -0x1c)" * (cast_expression "(undefined4 *)(puVar23 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*(code *)pppppppuVar22)();" (call_expression "(*(code *)pppppppuVar22)()" (parenthesized_expression "(*(code *)pppppppuVar22)" ( (pointer_expression "*(code *)pppppppuVar22" * (cast_expression "(code *)pppppppuVar22" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) }))) (expression_statement "local_154 = local_9c;" (assignment_expression "local_154 = local_9c" identifier = identifier) ;) (expression_statement "local_124 = (uint *******)*local_1a0;" (assignment_expression "local_124 = (uint *******)*local_1a0" identifier = (cast_expression "(uint *******)*local_1a0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*local_1a0" * identifier))) ;) (expression_statement "*(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" * (cast_expression "(uint ********)(puVar23 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = (binary_expression "local_120 + -0x3746d" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x20) = 0xa4120;" (assignment_expression "*(undefined4 *)(puVar23 + -0x20) = 0xa4120" (pointer_expression "*(undefined4 *)(puVar23 + -0x20)" * (cast_expression "(undefined4 *)(puVar23 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x20)" ( (binary_expression "puVar23 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = gettext();" (assignment_expression "uVar12 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "*(int *)(puVar23 + -0x18) = iVar5;" (assignment_expression "*(int *)(puVar23 + -0x18) = iVar5" (pointer_expression "*(int *)(puVar23 + -0x18)" * (cast_expression "(int *)(puVar23 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x18)" ( (binary_expression "puVar23 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x1c) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" * (cast_expression "(uint ********)(puVar23 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar23 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar23 + -0x20)" * (cast_expression "(uint ********)(puVar23 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x20)" ( (binary_expression "puVar23 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x24) = local_154;" (assignment_expression "*(uint ********)(puVar23 + -0x24) = local_154" (pointer_expression "*(uint ********)(puVar23 + -0x24)" * (cast_expression "(uint ********)(puVar23 + -0x24)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x24)" ( (binary_expression "puVar23 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x28) = local_124;" (assignment_expression "*(uint ********)(puVar23 + -0x28) = local_124" (pointer_expression "*(uint ********)(puVar23 + -0x28)" * (cast_expression "(uint ********)(puVar23 + -0x28)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x28)" ( (binary_expression "puVar23 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x2c) = uVar12;" (assignment_expression "*(undefined4 *)(puVar23 + -0x2c) = uVar12" (pointer_expression "*(undefined4 *)(puVar23 + -0x2c)" * (cast_expression "(undefined4 *)(puVar23 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x2c)" ( (binary_expression "puVar23 + -0x2c" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar23 + -0x30) = 0xa4146;" (assignment_expression "*(undefined4 *)(puVar23 + -0x30) = 0xa4146" (pointer_expression "*(undefined4 *)(puVar23 + -0x30)" * (cast_expression "(undefined4 *)(puVar23 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x30)" ( (binary_expression "puVar23 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005ad60();" (call_expression "FUN_0005ad60()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_24;" (assignment_expression "pppppppuVar29 = extraout_ECX_24" identifier = identifier) ;) (if_statement "if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }" if (parenthesized_expression "(local_9c != local_94)" ( (binary_expression "local_9c != local_94" identifier != identifier) )) (compound_statement "{\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }" { (expression_statement "*(uint ********)(puVar23 + -0x1c) = local_9c;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = local_9c" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" * (cast_expression "(uint ********)(puVar23 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x20) = 0xa4162;" (assignment_expression "*(undefined4 *)(puVar23 + -0x20) = 0xa4162" (pointer_expression "*(undefined4 *)(puVar23 + -0x20)" * (cast_expression "(undefined4 *)(puVar23 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x20)" ( (binary_expression "puVar23 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_25;" (assignment_expression "pppppppuVar29 = extraout_ECX_25" identifier = identifier) ;) })) (expression_statement "pppppppuVar28 = local_120;" (assignment_expression "pppppppuVar28 = local_120" identifier = identifier) ;) (expression_statement "puVar26 = puVar23 + -0xc;" (assignment_expression "puVar26 = puVar23 + -0xc" identifier = (binary_expression "puVar23 + -0xc" identifier + number_literal)) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }" if (parenthesized_expression "(local_84 != local_7c)" ( (binary_expression "local_84 != local_7c" identifier != identifier) )) (compound_statement "{\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }" { (expression_statement "*(uint ********)(puVar23 + -0x1c) = local_84;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = local_84" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" * (cast_expression "(uint ********)(puVar23 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x20) = 0xa417e;" (assignment_expression "*(undefined4 *)(puVar23 + -0x20) = 0xa417e" (pointer_expression "*(undefined4 *)(puVar23 + -0x20)" * (cast_expression "(undefined4 *)(puVar23 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x20)" ( (binary_expression "puVar23 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar23 + -0xc;" (assignment_expression "puVar26 = puVar23 + -0xc" identifier = (binary_expression "puVar23 + -0xc" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_26;" (assignment_expression "pppppppuVar29 = extraout_ECX_26" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar28;" (assignment_expression "pppppppuVar22 = pppppppuVar28" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) })) })) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;) })) (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" identifier = (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pppppuVar18 = param_1[0xe][(int)local_f0];" (assignment_expression "pppppuVar18 = param_1[0xe][(int)local_f0]" identifier = (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "pppppppuVar29 = extraout_ECX_20;" (assignment_expression "pppppppuVar29 = extraout_ECX_20" identifier = identifier) ;) })) }))) }) (else_clause "else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }" else (compound_statement "{\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }" { (if_statement "if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }" if (parenthesized_expression "(pppppuVar18 == (uint *****)0x0)" ( (binary_expression "pppppuVar18 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }" { (if_statement "if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }" if (parenthesized_expression "(((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff)" ( (binary_expression "((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff" (parenthesized_expression "((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2])" ( (binary_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]" (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[0x21][(int)local_f0 * 2 + 1]" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ])) & (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[0x21][(int)local_f0 * 2]" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]))) )) != number_literal) )) (compound_statement "{\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }" { (expression_statement "*(uint ********)(puVar24 + -4) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -4) = param_1" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x6e4;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x6e4" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x375d2" identifier + number_literal)) ;) comment comment (expression_statement "*(undefined **)(puVar24 + -0x14) = &UNK_000a342d;" (assignment_expression "*(undefined **)(puVar24 + -0x14) = &UNK_000a342d" (pointer_expression "*(undefined **)(puVar24 + -0x14)" * (cast_expression "(undefined **)(puVar24 + -0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (pointer_expression "&UNK_000a342d" & identifier)) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) (if_statement "if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }" if (parenthesized_expression "(((uint)local_ec[2] & 2) != 0)" ( (binary_expression "((uint)local_ec[2] & 2) != 0" (parenthesized_expression "((uint)local_ec[2] & 2)" ( (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) & number_literal) )) != number_literal) )) (compound_statement "{\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }" { (expression_statement "local_80 = local_f0;" (assignment_expression "local_80 = local_f0" identifier = identifier) ;) (expression_statement "local_170 = *(uint ********)(param_2 + 0x158);" (assignment_expression "local_170 = *(uint ********)(param_2 + 0x158)" identifier = (pointer_expression "*(uint ********)(param_2 + 0x158)" * (cast_expression "(uint ********)(param_2 + 0x158)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(param_2 + 0x158)" ( (binary_expression "param_2 + 0x158" identifier + number_literal) ))))) ;) (expression_statement "local_84 = param_1;" (assignment_expression "local_84 = param_1" identifier = identifier) ;) (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" identifier = (cast_expression "(uint *******)&local_84" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_84" & identifier))) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_178" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_170 + 10;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_170 + 10" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (binary_expression "local_170 + 10" identifier + number_literal)) ;) (expression_statement "*(int **)(puVar24 + -0x10) = &local_110;" (assignment_expression "*(int **)(puVar24 + -0x10) = &local_110" (pointer_expression "*(int **)(puVar24 + -0x10)" * (cast_expression "(int **)(puVar24 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_110" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2ed3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065700();" (call_expression "FUN_00065700()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar24 + -4;" (assignment_expression "puVar26 = puVar24 + -4" identifier = (binary_expression "puVar24 + -4" identifier + number_literal)) ;) (expression_statement "puVar23 = puVar24 + -4;" (assignment_expression "puVar23 = puVar24 + -4" identifier = (binary_expression "puVar24 + -4" identifier + number_literal)) ;) (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" identifier = (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) ;) (if_statement "if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }" if (parenthesized_expression "(local_110 == 0)" ( (binary_expression "local_110 == 0" identifier == number_literal) )) (compound_statement "{\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }" { (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }" { (expression_statement "*(undefined4 *)(puVar24 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -8)" * (cast_expression "(undefined4 *)(puVar24 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) comment comment (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa43a7;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa43a7" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "pppppppuVar29 = extraout_ECX_06;" (assignment_expression "pppppppuVar29 = extraout_ECX_06" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }" if (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x2e55) != '\0')" ( (binary_expression "*(char *)((int)pppppuVar15 + 0x2e55) != '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x2e55)" * (cast_expression "(char *)((int)pppppuVar15 + 0x2e55)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x2e55)" ( (binary_expression "(int)pppppuVar15 + 0x2e55" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }" { (expression_statement "ppppppuVar21 = param_1[1];" (assignment_expression "ppppppuVar21 = param_1[1]" identifier = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "pppppppuVar22 = (uint *******)(*param_1)[0x10];" (assignment_expression "pppppppuVar22 = (uint *******)(*param_1)[0x10]" identifier = (cast_expression "(uint *******)(*param_1)[0x10]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "(*param_1)[0x10]" (parenthesized_expression "(*param_1)" ( (pointer_expression "*param_1" * identifier) )) [ number_literal ]))) ;) (if_statement "if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }" if (parenthesized_expression "(pppppppuVar22 == local_120 + -0x99678)" ( (binary_expression "pppppppuVar22 == local_120 + -0x99678" identifier == (binary_expression "local_120 + -0x99678" identifier + number_literal)) )) (compound_statement "{\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }" { (expression_statement "*(uint ********)(puVar24 + -0xc) = local_f0;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_f0" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1 + 0x24;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1 + 0x24" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "param_1 + 0x24" identifier + number_literal)) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa3909;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa3909" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004e830();" (call_expression "FUN_0004e830()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }" else (compound_statement "{\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }" { (expression_statement "*(uint ********)(puVar24 + -0xc) = local_f0;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_f0" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa42a2;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa42a2" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*(code *)pppppppuVar22)();" (call_expression "(*(code *)pppppppuVar22)()" (parenthesized_expression "(*(code *)pppppppuVar22)" ( (pointer_expression "*(code *)pppppppuVar22" * (cast_expression "(code *)pppppppuVar22" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) }))) (expression_statement "local_12c = local_84;" (assignment_expression "local_12c = local_84" identifier = identifier) ;) (expression_statement "ppppppuVar17 = *local_1a4;" (assignment_expression "ppppppuVar17 = *local_1a4" identifier = (pointer_expression "*local_1a4" * identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = (binary_expression "local_120 + -0x3747a" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = 0xa3934;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = 0xa3934" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = gettext();" (assignment_expression "uVar12 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0xc) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar24 + -0xc) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar24 + -0xc)" * (cast_expression "(uint *******)(puVar24 + -0xc)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x14) = ppppppuVar17;" (assignment_expression "*(uint *******)(puVar24 + -0x14) = ppppppuVar17" (pointer_expression "*(uint *******)(puVar24 + -0x14)" * (cast_expression "(uint *******)(puVar24 + -0x14)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = 0xa394e;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = 0xa394e" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005ad60();" (call_expression "FUN_0005ad60()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar24 + -8;" (assignment_expression "puVar26 = puVar24 + -8" identifier = (binary_expression "puVar24 + -8" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_14;" (assignment_expression "pppppppuVar29 = extraout_ECX_14" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }" if (parenthesized_expression "(local_84 != local_7c)" ( (binary_expression "local_84 != local_7c" identifier != identifier) )) (compound_statement "{\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }" { (expression_statement "*(uint ********)(puVar24 + -0x18) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = 0xa3968;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = 0xa3968" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar24 + -8;" (assignment_expression "puVar26 = puVar24 + -8" identifier = (binary_expression "puVar24 + -8" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_15;" (assignment_expression "pppppppuVar29 = extraout_ECX_15" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) })) })) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;) })) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }" { (expression_statement "*(undefined4 *)(puVar24 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -8)" * (cast_expression "(undefined4 *)(puVar24 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa434c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa434c" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" identifier = (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pppppuVar18 = param_1[0xe][(int)local_f0];" (assignment_expression "pppppuVar18 = param_1[0xe][(int)local_f0]" identifier = (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "pppppppuVar29 = extraout_ECX_06;" (assignment_expression "pppppppuVar29 = extraout_ECX_06" identifier = identifier) ;) (expression_statement "pppppppuVar22 = param_1;" (assignment_expression "pppppppuVar22 = param_1" identifier = identifier) ;) (goto_statement "goto LAB_000a2f0d;" goto statement_identifier ;) })) (expression_statement "pppppppuVar29 = local_ec;" (assignment_expression "pppppppuVar29 = local_ec" identifier = identifier) ;) (if_statement "if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;" if (parenthesized_expression "(pppppuVar15[0x164d] != (uint ****)0x0)" ( (binary_expression "pppppuVar15[0x164d] != (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" identifier [ number_literal ]) != (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (goto_statement "goto LAB_000a2cf0;" goto statement_identifier ;)) }))) (expression_statement "puVar24 = puVar23;" (assignment_expression "puVar24 = puVar23" identifier = identifier) ;) (if_statement "if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }" if (parenthesized_expression "(pppppuVar18 != (uint *****)0x2)" ( (binary_expression "pppppuVar18 != (uint *****)0x2" identifier != (cast_expression "(uint *****)0x2" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }" { (if_statement "if (local_136 != '\0') goto LAB_000a2b6b;" if (parenthesized_expression "(local_136 != '\0')" ( (binary_expression "local_136 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a2b6b;" goto statement_identifier ;)) (labeled_statement "LAB_000a2d10:\n                    pppppppuVar29 = local_f0;" statement_identifier : (expression_statement "pppppppuVar29 = local_f0;" (assignment_expression "pppppppuVar29 = local_f0" identifier = identifier) ;)) (expression_statement "local_170 = *(uint ********)((int)local_158 + iVar19);" (assignment_expression "local_170 = *(uint ********)((int)local_158 + iVar19)" identifier = (pointer_expression "*(uint ********)((int)local_158 + iVar19)" * (cast_expression "(uint ********)((int)local_158 + iVar19)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "((int)local_158 + iVar19)" ( (binary_expression "(int)local_158 + iVar19" (cast_expression "(int)local_158" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) ))))) ;) (expression_statement "*(uint *********)(puVar24 + -0x10) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0x10) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0x10)" * (cast_expression "(uint *********)(puVar24 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19)" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)local_15c + iVar19)" * (cast_expression "(undefined4 *)((int)local_15c + iVar19)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_15c + iVar19)" ( (binary_expression "(int)local_15c + iVar19" (cast_expression "(int)local_15c" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) ))))) ;) (expression_statement "*(uint ********)(puVar24 + -0x18) = local_170;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_170" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x1c) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x1c) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x1c)" * (cast_expression "(uint ********)(puVar24 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x20) = local_154;" (assignment_expression "*(uint ********)(puVar24 + -0x20) = local_154" (pointer_expression "*(uint ********)(puVar24 + -0x20)" * (cast_expression "(uint ********)(puVar24 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x24) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x24) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x24)" * (cast_expression "(uint ********)(puVar24 + -0x24)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x28) = local_f0;" (assignment_expression "*(uint ********)(puVar24 + -0x28) = local_f0" (pointer_expression "*(uint ********)(puVar24 + -0x28)" * (cast_expression "(uint ********)(puVar24 + -0x28)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x28)" ( (binary_expression "puVar24 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x2c) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x2c) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x2c)" * (cast_expression "(uint ********)(puVar24 + -0x2c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x2c)" ( (binary_expression "puVar24 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x30) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x30) = param_3" (pointer_expression "*(int *)(puVar24 + -0x30)" * (cast_expression "(int *)(puVar24 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x30)" ( (binary_expression "puVar24 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa2d54;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa2d54" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" * (cast_expression "(undefined4 *)(puVar24 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x34)" ( (binary_expression "puVar24 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_0008ff40();" (assignment_expression "uVar12 = FUN_0008ff40()" identifier = (call_expression "FUN_0008ff40()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;) (expression_statement "*(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;" (assignment_expression "*(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12" (pointer_expression "*(undefined4 *)((int)param_1[0xe] + iVar19)" * (cast_expression "(undefined4 *)((int)param_1[0xe] + iVar19)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1[0xe] + iVar19)" ( (binary_expression "(int)param_1[0xe] + iVar19" (cast_expression "(int)param_1[0xe]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xe]" identifier [ number_literal ])) + identifier) )))) = identifier) ;) (expression_statement "pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);" (assignment_expression "pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84)" identifier = (cast_expression "(uint *******)((uint)local_80 & (uint)local_84)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_80 & (uint)local_84)" ( (binary_expression "(uint)local_80 & (uint)local_84" (cast_expression "(uint)local_80" ( (type_descriptor "uint" type_identifier) ) identifier) & (cast_expression "(uint)local_84" ( (type_descriptor "uint" type_identifier) ) identifier)) )))) ;) (expression_statement "ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;" (assignment_expression "ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2" identifier = (binary_expression "param_1[0x21] + (int)pppppppuVar29 * 2" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) + (binary_expression "(int)pppppppuVar29 * 2" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (if_statement "if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }" if (parenthesized_expression "(pppppppuVar22 == (uint *******)0xffffffff)" ( (binary_expression "pppppppuVar22 == (uint *******)0xffffffff" identifier == (cast_expression "(uint *******)0xffffffff" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }" { (expression_statement "*ppppppuVar21 = (uint *****)0xffffffff;" (assignment_expression "*ppppppuVar21 = (uint *****)0xffffffff" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[1]" identifier [ number_literal ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) }) (else_clause "else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }" else (compound_statement "{\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }" { (expression_statement "*ppppppuVar21 = (uint *****)local_84;" (assignment_expression "*ppppppuVar21 = (uint *****)local_84" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)local_84" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "ppppppuVar21[1] = (uint *****)local_80;" (assignment_expression "ppppppuVar21[1] = (uint *****)local_80" (subscript_expression "ppppppuVar21[1]" identifier [ number_literal ]) = (cast_expression "(uint *****)local_80" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) }))) (if_statement "if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }" if (parenthesized_expression "((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0))" ( (binary_expression "(((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)" (parenthesized_expression "(((uint)local_84 & (uint)local_80) == 0xffffffff)" ( (binary_expression "((uint)local_84 & (uint)local_80) == 0xffffffff" (parenthesized_expression "((uint)local_84 & (uint)local_80)" ( (binary_expression "(uint)local_84 & (uint)local_80" (cast_expression "(uint)local_84" ( (type_descriptor "uint" type_identifier) ) identifier) & (cast_expression "(uint)local_80" ( (type_descriptor "uint" type_identifier) ) identifier)) )) == number_literal) )) && (parenthesized_expression "(local_170 != (uint *******)0x0)" ( (binary_expression "local_170 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ))) )) (compound_statement "{\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }" { (expression_statement "*(byte *)(param_1 + 0x13) = 1;" (assignment_expression "*(byte *)(param_1 + 0x13) = 1" (pointer_expression "*(byte *)(param_1 + 0x13)" * (cast_expression "(byte *)(param_1 + 0x13)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x13)" ( (binary_expression "param_1 + 0x13" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "pppppppuVar29 = local_84;" (assignment_expression "pppppppuVar29 = local_84" identifier = identifier) ;) (if_statement "if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }" if (parenthesized_expression "((char)local_140 == '\0')" ( (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }" { (expression_statement "*(undefined4 *)(puVar24 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -4)" * (cast_expression "(undefined4 *)(puVar24 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) comment comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa43fb;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa43fb" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }" if (parenthesized_expression "(*(char *)((int)(*local_13c)[2] + 0x192d) != '\0')" ( (binary_expression "*(char *)((int)(*local_13c)[2] + 0x192d) != '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x192d)" * (cast_expression "(char *)((int)(*local_13c)[2] + 0x192d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(*local_13c)[2] + 0x192d)" ( (binary_expression "(int)(*local_13c)[2] + 0x192d" (cast_expression "(int)(*local_13c)[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }" { (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "bVar35 = ((uint)local_ec[2] & 2) == 0;" (assignment_expression "bVar35 = ((uint)local_ec[2] & 2) == 0" identifier = (binary_expression "((uint)local_ec[2] & 2) == 0" (parenthesized_expression "((uint)local_ec[2] & 2)" ( (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) & number_literal) )) == number_literal)) ;) (if_statement "if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }" { (expression_statement "pppppppuVar29 = (uint *******)0xc;" (assignment_expression "pppppppuVar29 = (uint *******)0xc" identifier = (cast_expression "(uint *******)0xc" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xe0537);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xe0537)" identifier = (cast_expression "(byte *)((int)local_120 + -0xe0537)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xe0537)" ( (binary_expression "(int)local_120 + -0xe0537" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);" do (compound_statement "{\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar28 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar35)" ( identifier )) ;) (expression_statement "bVar34 = false;" (assignment_expression "bVar34 = false" identifier = false) ;) (expression_statement "bVar33 = (!bVar33 && !bVar35) == bVar33;" (assignment_expression "bVar33 = (!bVar33 && !bVar35) == bVar33" identifier = (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" ( (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" ! identifier) && (unary_expression "!bVar35" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (compound_statement "{\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }" { (expression_statement "pppppppuVar29 = (uint *******)0xd;" (assignment_expression "pppppppuVar29 = (uint *******)0xd" identifier = (cast_expression "(uint *******)0xd" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdd155);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdd155)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdd155)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdd155)" ( (binary_expression "(int)local_120 + -0xdd155" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);" do (compound_statement "{\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar34 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar34 = *(byte *)pppppppuVar28 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (expression_statement "bVar35 = false;" (assignment_expression "bVar35 = false" identifier = false) ;) (expression_statement "bVar33 = (!bVar34 && !bVar33) == bVar34;" (assignment_expression "bVar33 = (!bVar34 && !bVar33) == bVar34" identifier = (binary_expression "(!bVar34 && !bVar33) == bVar34" (parenthesized_expression "(!bVar34 && !bVar33)" ( (binary_expression "!bVar34 && !bVar33" (unary_expression "!bVar34" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (compound_statement "{\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }" { (expression_statement "pppppppuVar29 = (uint *******)0xd;" (assignment_expression "pppppppuVar29 = (uint *******)0xd" identifier = (cast_expression "(uint *******)0xd" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xe052b);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xe052b)" identifier = (cast_expression "(byte *)((int)local_120 + -0xe052b)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xe052b)" ( (binary_expression "(int)local_120 + -0xe052b" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);" do (compound_statement "{\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar22 < *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar22 == *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (expression_statement "bVar34 = false;" (assignment_expression "bVar34 = false" identifier = false) ;) (expression_statement "bVar33 = (!bVar35 && !bVar33) == bVar35;" (assignment_expression "bVar33 = (!bVar35 && !bVar33) == bVar35" identifier = (binary_expression "(!bVar35 && !bVar33) == bVar35" (parenthesized_expression "(!bVar35 && !bVar33)" ( (binary_expression "!bVar35 && !bVar33" (unary_expression "!bVar35" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) == identifier)) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (if_statement "if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (compound_statement "{\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }" { (expression_statement "pppppppuVar29 = (uint *******)0xe;" (assignment_expression "pppppppuVar29 = (uint *******)0xe" identifier = (cast_expression "(uint *******)0xe" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pppppppuVar32 = local_120 + -0x37452;" (assignment_expression "pppppppuVar32 = local_120 + -0x37452" identifier = (binary_expression "local_120 + -0x37452" identifier + number_literal)) ;) (do_statement "do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);" do (compound_statement "{\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;" (assignment_expression "bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32" identifier = (binary_expression "*(byte *)pppppppuVar28 < *(byte *)pppppppuVar32" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*(byte *)pppppppuVar32" * (cast_expression "(byte *)pppppppuVar32" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32" identifier = (binary_expression "*(byte *)pppppppuVar28 == *(byte *)pppppppuVar32" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*(byte *)pppppppuVar32" * (cast_expression "(byte *)pppppppuVar32" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)))) ;) (expression_statement "pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar32 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar32 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar32 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar32" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (if_statement "if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;" if (parenthesized_expression "((!bVar34 && !bVar33) != bVar34)" ( (binary_expression "(!bVar34 && !bVar33) != bVar34" (parenthesized_expression "(!bVar34 && !bVar33)" ( (binary_expression "!bVar34 && !bVar33" (unary_expression "!bVar34" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;)) })) (if_statement "if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }" if (parenthesized_expression "(local_b8 == local_b4)" ( (binary_expression "local_b8 == local_b4" identifier == identifier) )) (compound_statement "{\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }" { (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" * (cast_expression "(uint *********)(puVar24 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (pointer_expression "&local_f0" & identifier)) ;) (expression_statement "*(int **)(puVar24 + -0xc) = local_b8;" (assignment_expression "*(int **)(puVar24 + -0xc) = local_b8" (pointer_expression "*(int **)(puVar24 + -0xc)" * (cast_expression "(int **)(puVar24 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" identifier = (binary_expression "puVar24 + -0x10" identifier + number_literal)) ;) (expression_statement "*(int ***)(puVar24 + -0x10) = &local_bc;" (assignment_expression "*(int ***)(puVar24 + -0x10) = &local_bc" (pointer_expression "*(int ***)(puVar24 + -0x10)" * (cast_expression "(int ***)(puVar24 + -0x10)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_bc" & identifier)) ;) comment (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa42d3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa42d3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_31;" (assignment_expression "pppppppuVar29 = extraout_ECX_31" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) (goto_statement "goto LAB_000a3e57;" goto statement_identifier ;) })) (expression_statement "*local_b8 = (int)local_f0;" (assignment_expression "*local_b8 = (int)local_f0" (pointer_expression "*local_b8" * identifier) = (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_b8 = local_b8 + 1;" (assignment_expression "local_b8 = local_b8 + 1" identifier = (binary_expression "local_b8 + 1" identifier + number_literal)) ;) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) })) (if_statement "if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }" if (parenthesized_expression "(local_c4 == local_c0)" ( (binary_expression "local_c4 == local_c0" identifier == identifier) )) (compound_statement "{\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }" { (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" * (cast_expression "(uint *********)(puVar24 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (pointer_expression "&local_f0" & identifier)) ;) (expression_statement "*(int **)(puVar24 + -0xc) = local_c4;" (assignment_expression "*(int **)(puVar24 + -0xc) = local_c4" (pointer_expression "*(int **)(puVar24 + -0xc)" * (cast_expression "(int **)(puVar24 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" identifier = (binary_expression "puVar24 + -0x10" identifier + number_literal)) ;) (expression_statement "*(int ***)(puVar24 + -0x10) = &local_c8;" (assignment_expression "*(int ***)(puVar24 + -0x10) = &local_c8" (pointer_expression "*(int ***)(puVar24 + -0x10)" * (cast_expression "(int ***)(puVar24 + -0x10)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_c8" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa428a;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa428a" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_30;" (assignment_expression "pppppppuVar29 = extraout_ECX_30" identifier = identifier) ;) (goto_statement "goto LAB_000a3e57;" goto statement_identifier ;) })) (expression_statement "*local_c4 = (int)local_f0;" (assignment_expression "*local_c4 = (int)local_f0" (pointer_expression "*local_c4" * identifier) = (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_c4 = local_c4 + 1;" (assignment_expression "local_c4 = local_c4 + 1" identifier = (binary_expression "local_c4 + 1" identifier + number_literal)) ;) })) })) })) })) }))) })) }) (else_clause "else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" else (if_statement "if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" if (parenthesized_expression "(local_dc == local_d8)" ( (binary_expression "local_dc == local_d8" identifier == identifier) )) (compound_statement "{\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }" { (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" * (cast_expression "(uint *********)(puVar24 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (pointer_expression "&local_f0" & identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_dc;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_dc" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" identifier = (binary_expression "puVar24 + -0x10" identifier + number_literal)) ;) (expression_statement "*(uint *********)(puVar24 + -0x10) = &local_e0;" (assignment_expression "*(uint *********)(puVar24 + -0x10) = &local_e0" (pointer_expression "*(uint *********)(puVar24 + -0x10)" * (cast_expression "(uint *********)(puVar24 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_e0" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3e57;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3e57" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_21;" (assignment_expression "pppppppuVar29 = extraout_ECX_21" identifier = identifier) ;) (labeled_statement "LAB_000a3e57:\n              puVar24 = puVar25 + 0x10;" statement_identifier : (expression_statement "puVar24 = puVar25 + 0x10;" (assignment_expression "puVar24 = puVar25 + 0x10" identifier = (binary_expression "puVar25 + 0x10" identifier + number_literal)) ;)) }) (else_clause "else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" else (compound_statement "{\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" { (expression_statement "*local_dc = (uint ******)local_f0;" (assignment_expression "*local_dc = (uint ******)local_f0" (pointer_expression "*local_dc" * identifier) = (cast_expression "(uint ******)local_f0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "local_dc = local_dc + 1;" (assignment_expression "local_dc = local_dc + 1" identifier = (binary_expression "local_dc + 1" identifier + number_literal)) ;) }))))) }))) (labeled_statement "LAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);" statement_identifier : (expression_statement "pppppppuVar27 = (uint *******)((int)local_f0 + 1);" (assignment_expression "pppppppuVar27 = (uint *******)((int)local_f0 + 1)" identifier = (cast_expression "(uint *******)((int)local_f0 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_f0 + 1)" ( (binary_expression "(int)local_f0 + 1" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;)) (expression_statement "pppppppuVar28 = local_134 + 0x10;" (assignment_expression "pppppppuVar28 = local_134 + 0x10" identifier = (binary_expression "local_134 + 0x10" identifier + number_literal)) ;) (expression_statement "local_f0 = pppppppuVar27;" (assignment_expression "local_f0 = pppppppuVar27" identifier = identifier) ;) (if_statement "if (local_130 <= pppppppuVar27) goto LAB_000a2740;" if (parenthesized_expression "(local_130 <= pppppppuVar27)" ( (binary_expression "local_130 <= pppppppuVar27" identifier <= identifier) )) (goto_statement "goto LAB_000a2740;" goto statement_identifier ;)) (expression_statement "local_ec = pppppppuVar28;" (assignment_expression "local_ec = pppppppuVar28" identifier = identifier) ;) (expression_statement "ppppppuVar21 = *pppppppuVar28;" (assignment_expression "ppppppuVar21 = *pppppppuVar28" identifier = (pointer_expression "*pppppppuVar28" * identifier)) ;) (expression_statement "local_124 = (uint *******)local_134[0x11];" (assignment_expression "local_124 = (uint *******)local_134[0x11]" identifier = (cast_expression "(uint *******)local_134[0x11]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_134[0x11]" identifier [ number_literal ]))) ;) (expression_statement "puVar26 = puVar24;" (assignment_expression "puVar26 = puVar24" identifier = identifier) ;) (expression_statement "local_134 = pppppppuVar28;" (assignment_expression "local_134 = pppppppuVar28" identifier = identifier) ;) }) while (parenthesized_expression "(ppppppuVar21 < local_148)" ( (binary_expression "ppppppuVar21 < local_148" identifier < identifier) )) ;) })) (expression_statement "pppppppuVar22 = local_f0;" (assignment_expression "pppppppuVar22 = local_f0" identifier = identifier) ;) (expression_statement "local_ec = local_134;" (assignment_expression "local_ec = local_134" identifier = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x37485" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x37485" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3657;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3657" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = gettext();" (assignment_expression "uVar12 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(uint *******)(puVar26 + -4) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar26 + -4) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar26 + -4)" * (cast_expression "(uint *******)(puVar26 + -4)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = uVar12;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = uVar12" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3665;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3665" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00091980();" (call_expression "FUN_00091980()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" identifier = identifier) ;) }))) (if_statement "if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_bc != (int *)0x0)" ( (binary_expression "local_bc != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }" { (expression_statement "*(int **)(puVar24 + -0x10) = local_bc;" (assignment_expression "*(int **)(puVar24 + -0x10) = local_bc" (pointer_expression "*(int **)(puVar24 + -0x10)" * (cast_expression "(int **)(puVar24 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa28af;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa28af" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_c8 != (int *)0x0)" ( (binary_expression "local_c8 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }" { (expression_statement "*(int **)(puVar24 + -0x10) = local_c8;" (assignment_expression "*(int **)(puVar24 + -0x10) = local_c8" (pointer_expression "*(int **)(puVar24 + -0x10)" * (cast_expression "(int **)(puVar24 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa28cb;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa28cb" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_d4 != (int *)0x0)" ( (binary_expression "local_d4 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }" { (expression_statement "*(int **)(puVar24 + -0x10) = local_d4;" (assignment_expression "*(int **)(puVar24 + -0x10) = local_d4" (pointer_expression "*(int **)(puVar24 + -0x10)" * (cast_expression "(int **)(puVar24 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa28e7;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa28e7" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_e0 != (uint *******)0x0)" ( (binary_expression "local_e0 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_e0;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_e0" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2903;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2903" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_b0 != (void *)0x0)" ( (binary_expression "local_b0 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }" { (expression_statement "*(void **)(puVar24 + -0x10) = local_b0;" (assignment_expression "*(void **)(puVar24 + -0x10) = local_b0" (pointer_expression "*(void **)(puVar24 + -0x10)" * (cast_expression "(void **)(puVar24 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa291f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa291f" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) }) (else_clause "else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }" else (compound_statement "{\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }" { (expression_statement "puVar24 = auStack_1ac;" (assignment_expression "puVar24 = auStack_1ac" identifier = identifier) ;) (if_statement "if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }" { (expression_statement "iVar19 = *param_4;" (assignment_expression "iVar19 = *param_4" identifier = (pointer_expression "*param_4" * identifier)) ;) (if_statement "if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" { (expression_statement "FUN_0005cea0(iVar19);" (call_expression "FUN_0005cea0(iVar19)" identifier (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "FUN_00180780(iVar19,0xc);" (call_expression "FUN_00180780(iVar19,0xc)" identifier (argument_list "(iVar19,0xc)" ( identifier , number_literal ))) ;) })) (expression_statement "iVar19 = param_4[1];" (assignment_expression "iVar19 = param_4[1]" identifier = (subscript_expression "param_4[1]" identifier [ number_literal ])) ;) (expression_statement "*param_4 = 0;" (assignment_expression "*param_4 = 0" (pointer_expression "*param_4" * identifier) = number_literal) ;) (if_statement "if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" { (expression_statement "FUN_0005cea0(iVar19);" (call_expression "FUN_0005cea0(iVar19)" identifier (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "FUN_00180780(iVar19,0xc);" (call_expression "FUN_00180780(iVar19,0xc)" identifier (argument_list "(iVar19,0xc)" ( identifier , number_literal ))) ;) })) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar24 = auStack_1ac;" (assignment_expression "puVar24 = auStack_1ac" identifier = identifier) ;) })) }))) (expression_statement "*(undefined4 **)(puVar24 + -0x10) = local_15c;" (assignment_expression "*(undefined4 **)(puVar24 + -0x10) = local_15c" (pointer_expression "*(undefined4 **)(puVar24 + -0x10)" * (cast_expression "(undefined4 **)(puVar24 + -0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2938;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2938" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 **)(puVar24 + -0x10) = local_158;" (assignment_expression "*(undefined4 **)(puVar24 + -0x10) = local_158" (pointer_expression "*(undefined4 **)(puVar24 + -0x10)" * (cast_expression "(undefined4 **)(puVar24 + -0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2944;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2944" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })))
(ERROR "/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */\n/* WARNING: Type propagation algorithm not settling */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* DWARF original prototype: void do_layout(Sized_relobj_file<64,_false> * this, Symbol_table *\n   symtab, Layout * layout, Read_symbols_data * sd) */\n\nvoid __thiscall\ngold::Sized_relobj_file<64,_false>::do_layout\n          (Sized_relobj_file<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Read_symbols_data *sd)\n\n{\n  _Rb_tree_header *p_Var1;\n  _Base_ptr *pp_Var2;\n  byte bVar3;\n  bool bVar4;\n  Sized_relobj_file<64,_false> *pSVar5;\n  uint uVar6;\n  Plugin_manager *pPVar7;\n  Elf_Word EVar8;\n  Input_file *this_00;\n  iterator __position;\n  pointer pDVar9;\n  Compressed_section_map *pCVar10;\n  undefined4 uVar11;\n  int iVar12;\n  Garbage_collection *pGVar13;\n  int *piVar14;\n  pointer puVar15;\n  pointer pDVar16;\n  pointer ppOVar17;\n  pointer puVar18;\n  uint *puVar19;\n  File_view *pFVar20;\n  code *pcVar21;\n  pointer pcVar22;\n  uint3 uVar23;\n  bool bVar24;\n  bool bVar25;\n  bool bVar26;\n  Parameters *pPVar27;\n  char *pcVar28;\n  bool bVar29;\n  difference_type __d;\n  undefined4 *puVar30;\n  undefined4 *puVar31;\n  undefined4 *puVar32;\n  size_t sVar33;\n  General_options *pGVar34;\n  _Base_ptr p_Var35;\n  _func_int_varargs *p_Var36;\n  __node_base *p_Var37;\n  _func_int_varargs **pp_Var38;\n  undefined4 uVar39;\n  pointer pDVar40;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar41;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar42;\n  Relocatable_relocs *pRVar43;\n  Output_section *pOVar44;\n  uchar *puVar45;\n  vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *pvVar46;\n  pointer ppRVar47;\n  byte bVar48;\n  Shdr SVar49;\n  Sized_relobj_file<64,_false> *extraout_ECX;\n  int iVar50;\n  Sized_relobj_file<64,_false> *pSVar51;\n  Sized_relobj_file<64,_false> *extraout_ECX_00;\n  _Base_ptr p_Var52;\n  _Base_ptr p_Var53;\n  Sized_relobj_file<64,_false> *extraout_ECX_01;\n  Sized_relobj_file<64,_false> *extraout_ECX_02;\n  Sized_relobj_file<64,_false> *extraout_ECX_03;\n  Sized_relobj_file<64,_false> *extraout_ECX_04;\n  Sized_relobj_file<64,_false> *extraout_ECX_05;\n  Sized_relobj_file<64,_false> *extraout_ECX_06;\n  Sized_relobj_file<64,_false> *extraout_ECX_07;\n  Sized_relobj_file<64,_false> *extraout_ECX_08;\n  Sized_relobj_file<64,_false> *extraout_ECX_09;\n  Sized_relobj_file<64,_false> *extraout_ECX_10;\n  Sized_relobj_file<64,_false> *extraout_ECX_11;\n  Sized_relobj_file<64,_false> *extraout_ECX_12;\n  Sized_relobj_file<64,_false> *extraout_ECX_13;\n  Sized_relobj_file<64,_false> *extraout_ECX_14;\n  Sized_relobj_file<64,_false> *extraout_ECX_15;\n  Sized_relobj_file<64,_false> *extraout_ECX_16;\n  Sized_relobj_file<64,_false> *extraout_ECX_17;\n  Sized_relobj_file<64,_false> *extraout_ECX_18;\n  Sized_relobj_file<64,_false> *extraout_ECX_19;\n  Sized_relobj_file<64,_false> *extraout_ECX_20;\n  Sized_relobj_file<64,_false> *extraout_ECX_21;\n  Sized_relobj_file<64,_false> *extraout_ECX_22;\n  Sized_relobj_file<64,_false> *extraout_ECX_23;\n  Sized_relobj_file<64,_false> *extraout_ECX_24;\n  Sized_relobj_file<64,_false> *extraout_ECX_25;\n  Sized_relobj_file<64,_false> *extraout_ECX_26;\n  Sized_relobj_file<64,_false> *extraout_ECX_27;\n  Sized_relobj_file<64,_false> *extraout_ECX_28;\n  Sized_relobj_file<64,_false> *extraout_ECX_29;\n  Sized_relobj_file<64,_false> *extraout_ECX_30;\n  Sized_relobj_file<64,_false> *extraout_ECX_31;\n  pointer ppOVar54;\n  pointer pDVar55;\n  uchar *puVar56;\n  undefined **ppuVar57;\n  pointer puVar58;\n  undefined1 *puVar59;\n  undefined4 *puVar60;\n  int *piVar61;\n  int *piVar62;\n  uint uVar63;\n  Incremental_inputs *pIVar64;\n  byte *pbVar65;\n  _Base_ptr p_Var66;\n  Shdr_data<64> *pSVar67;\n  pointer ppRVar68;\n  uint uVar69;\n  byte *pbVar70;\n  byte *pbVar71;\n  byte *pbVar72;\n  _Base_ptr p_Var73;\n  pointer pDVar74;\n  bool bVar75;\n  bool bVar76;\n  byte bVar77;\n  undefined1 auStack_1f0 [52];\n  Symbols_data *in_stack_fffffe48;\n  Object *in_stack_fffffe54;\n  Symbols_data *local_190;\n  section_size_type local_188;\n  File_view *local_180;\n  section_size_type local_17c;\n  _Base_ptr local_174;\n  uint local_170;\n  uint local_16c;\n  uint local_168;\n  File_view *local_164;\n  uchar *local_160;\n  undefined4 local_154;\n  undefined4 local_150;\n  uint local_148;\n  uchar *local_144;\n  uint local_140;\n  bool local_137;\n  Shdr_data<64> *local_134;\n  uint *local_12c;\n  Sized_relobj_file<64,_false> *local_124;\n  undefined **local_120;\n  int *local_11c;\n  undefined4 local_118;\n  int local_110;\n  char local_10c [4];\n  undefined4 local_108;\n  _Base_ptr local_100 [3];\n  undefined1 local_f1;\n  uint i;\n  Shdr shdr;\n  off_t *local_e8;\n  _Base_ptr local_e4;\n  vector<unsigned_int,_std::allocator<unsigned_int>_> reloc_sections;\n  vector<unsigned_int,_std::allocator<unsigned_int>_> eh_frame_sections;\n  vector<unsigned_int,_std::allocator<unsigned_int>_> debug_info_sections;\n  vector<unsigned_int,_std::allocator<unsigned_int>_> debug_types_sections;\n  vector<bool,_std::allocator<bool>_> omit;\n  Shdr shdr_2;\n  undefined1 local_94 [16];\n  off_t offset;\n  undefined4 local_6c;\n  undefined4 local_68;\n  undefined4 local_64;\n  Input_file *local_60;\n  Sized_relobj_file<64,_false> *local_5c;\n  undefined4 local_58;\n  uint local_54;\n  undefined4 local_50;\n  Xindex *local_4c;\n  Compressed_section_map *local_48;\n  pointer local_44;\n  pointer local_40;\n  pointer local_3c;\n  vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *local_38;\n  Object_merge_map *local_34;\n  undefined4 local_30;\n  Read_relocs_data *local_2c;\n  Symbols_data *local_28;\n  uint *local_24;\n  \n  bVar77 = 0;\n  if (parameters->target_ == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    do_gold_unreachable("../../gold/parameters.h",0x69,"target");\n  }\n  pGVar34 = parameters->options_;\n  pSVar5 = *(Sized_relobj_file<64,_false> **)(*(int *)(parameters->target_ + 4) + 0x60);\n  uVar6 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;\n  if (pGVar34 == (General_options *)0x0) goto LAB_000a34ee;\n  if ((pGVar34->gc_sections_).value == false) {\n    if (pGVar34->icf_status_ == ICF_NONE) {\n      if (layout->unique_segment_for_sections_specified_ == false) {\n        if (uVar6 == 0) {\n          return;\n        }\n        local_148 = sd->section_names_size;\n        local_160 = sd->section_headers->data_;\n        local_164 = sd->symbols;\n        if (local_164 != (File_view *)0x0) {\n          local_164 = (File_view *)local_164->data_;\n        }\n        local_17c = sd->symbols_size;\n        local_180 = sd->symbol_names;\n        if (local_180 != (File_view *)0x0) {\n          local_180 = (File_view *)local_180->data_;\n        }\n        bVar25 = false;\n        bVar24 = false;\n        local_190 = (Symbols_data *)0x0;\n        local_188 = sd->symbol_names_size;\n        local_144 = sd->section_names->data_;\n        bVar26 = false;\n        goto LAB_000a1e71;\n      }\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a1e0a;\n    }\n    else {\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (sd == (Read_symbols_data *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x597,"do_layout");\n    }\n    if (uVar6 == 0) {\n      return;\n    }\n    local_190 = (Symbols_data *)operator_new(0x20);\n    in_stack_fffffe48 = local_190;\n    Relobj::copy_symbols_data((Relobj *)this,local_190,sd,uVar6 << 6);\n    local_160 = local_190->section_headers_data;\n    (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = local_190;\n    local_148 = local_190->section_names_size;\n    local_164 = (File_view *)local_190->symbols_data;\n    local_17c = local_190->symbols_size;\n    local_180 = (File_view *)local_190->symbol_names_data;\n    pGVar34 = parameters->options_;\n    local_188 = local_190->symbol_names_size;\n    local_144 = local_190->section_names_data;\n    if (pGVar34 == (General_options *)0x0) {\nLAB_000a34ee:\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }\n    bVar25 = true;\n    bVar24 = false;\n    bVar26 = true;\n  }\n  else {\n    local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n    if (local_190 == (Symbols_data *)0x0) goto LAB_000a3448;\n    if (symtab->gc_->is_worklist_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout");\n    }\n    if (pGVar34->icf_status_ != ICF_NONE) {\nLAB_000a33a4:\n      if (symtab->icf_->icf_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");\n      }\n    }\nLAB_000a1e0a:\n    if (uVar6 == 0) {\n      return;\n    }\n    bVar25 = true;\n    bVar24 = true;\n    local_160 = local_190->section_headers_data;\n    local_148 = local_190->section_names_size;\n    bVar26 = false;\n    local_164 = (File_view *)local_190->symbols_data;\n    local_17c = local_190->symbols_size;\n    local_180 = (File_view *)local_190->symbol_names_data;\n    local_188 = local_190->symbol_names_size;\n    local_144 = local_190->section_names_data;\n  }\nLAB_000a1e71:\n  local_120 = &_GLOBAL_OFFSET_TABLE_;\n  pPVar7 = pGVar34->plugins_;\n  bVar3 = 0;\n  if ((pPVar7 != (Plugin_manager *)0x0) && (bVar3 = pPVar7->any_claimed_, (bool)bVar3 != false)) {\n    bVar3 = pPVar7->in_replacement_phase_ ^ 1;\n  }\n  if (0x3fffffff < uVar6) {\n                    /* WARNING: Subroutine does not return */\n    std::__throw_bad_alloc();\n  }\n  puVar30 = (undefined4 *)operator_new(uVar6 * 4);\n  puVar32 = puVar30;\n  if (uVar6 != 0) {\n    do {\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    } while (puVar32 != puVar30 + uVar6);\n  }\n                    /* try { // try from 000a1efd to 000a1f01 has its CatchHandler @ 000a4675 */\n  puVar31 = (undefined4 *)operator_new(uVar6 * 4);\n  piVar62 = (int *)&stack0xfffffe54;\n  puVar59 = &stack0xfffffe54;\n  local_134 = (Shdr_data<64> *)(local_160 + 0x40);\n  puVar32 = puVar31;\n  if (uVar6 != 0) {\n    do {\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    } while (puVar32 != puVar31 + uVar6);\n    if (uVar6 != 1) {\n      uVar69 = 1;\n      local_140 = 0;\n      pSVar67 = local_134;\n      do {\n        while( true ) {\n          if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }\n          EVar8 = pSVar67->sh_type;\n          if ((EVar8 == 9) || (EVar8 == 4)) break;\nLAB_000a1f88:\n          uVar69 = uVar69 + 1;\n          pSVar67 = pSVar67 + 1;\n          if (uVar69 == uVar6) goto LAB_000a2028;\n        }\n        uVar63 = pSVar67->sh_info;\n        if (0xfeff < uVar63) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);\n          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n        }\n        if ((uVar63 == 0) || (uVar6 <= uVar63)) {\n          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");\n          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);\n          goto LAB_000a1f88;\n        }\n        puVar19 = puVar30 + uVar63;\n        if (*puVar19 == 0) {\n          *puVar19 = uVar69;\n          puVar31[uVar63] = EVar8;\n          goto LAB_000a1f88;\n        }\n        *puVar19 = 0xffffffff;\n        uVar69 = uVar69 + 1;\n        pSVar67 = pSVar67 + 1;\n      } while (uVar69 != uVar6);\n      goto LAB_000a2028;\n    }\n  }\n  local_140 = 0;\nLAB_000a2028:\n  if (!bVar24) {\n    ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_finish;\n    ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_start;\n    uVar69 = (int)ppOVar17 - (int)ppOVar54 >> 2;\n    if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n      std::vector<gold::Output_section*,_std::allocator<gold::Output_section*>_>::_M_default_append\n                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)) {\n      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54;\n    }\n    puVar15 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.\n              _M_impl._M_finish;\n    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.\n              _M_impl._M_start;\n    uVar69 = (int)puVar15 - (int)puVar18 >> 3;\n    if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      std::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>::\n      _M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)) {\n      (this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18;\n    }\n  }\n  this_00 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.input_file_;\n  if (this_00 == (Input_file *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */\n    Object::input_file(in_stack_fffffe54);\n  }\n                    /* try { // try from 000a204d to 000a2051 has its CatchHandler @ 000a46c7 */\n  local_137 = Input_file::just_symbols(this_00);\n  if (local_137) {\n    piVar62 = (int *)&stack0xfffffe54;\n    if (!bVar24) {\n      pFVar20 = sd->section_headers;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        in_stack_fffffe48 = (Symbols_data *)0xc;\n        operator_delete(pFVar20,0xc);\n      }\n      pFVar20 = sd->section_names;\n      sd->section_headers = (File_view *)0x0;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        operator_delete(pFVar20,0xc);\n      }\n      sd->section_names = (File_view *)0x0;\n      piVar62 = (int *)&stack0xfffffe54;\n    }\n  }\n  else {\n    if (local_140 != 0) {\n      if (parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      pPVar7 = parameters->options_->plugins_;\n      shdr.p_ = (Shdr_data<64> *)this;\n      __position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish;\n      if (__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.\n          _M_end_of_storage) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::\n        _M_realloc_insert<gold::Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);\n      }\n      else {\n        *__position._M_current = (Relobj *)this;\n        (pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;\n      }\n      if (0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        std::__throw_length_error("vector::reserve");\n      }\n      pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n               ._M_impl._M_start;\n      if ((uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140) {\n        pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        pDVar40 = (pointer)operator_new(local_140 * 100);\n        if (pDVar9 != pDVar16) {\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }\n        pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n        pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start;\n        if (pDVar55 != pDVar74) {\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }\n        if (pDVar74 != (pointer)0x0) {\n          operator_delete(pDVar74);\n        }\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40;\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140;\n      }\n      this->is_deferred_layout_ = true;\n    }\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = 0;\n    uVar69 = uVar6 + 0x1f >> 5;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage = (_Bit_pointer)0x0;\n    uVar63 = uVar69 * 4;\n                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)operator_new(uVar63);\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + uVar69;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = uVar6 & 0x1f;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + ((int)uVar6 >> 5);\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;\n    memset(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p,0,uVar63);\n    pGVar34 = parameters->options_;\n    if (pGVar34 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }\n    bVar4 = (pGVar34->relocatable_).value;\n    SVar49.p_ = (Shdr_data<64> *)(uint)bVar4;\n    bVar3 = bVar4;\n    if (bVar4 == false) {\n      bVar3 = (pGVar34->emit_relocs_).value;\n    }\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start\n         = (pointer)0x0;\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n         = (pointer)0x0;\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    i = 1;\n    if (uVar6 < 2) {\n      local_16c = 0;\n      local_168 = 0;\nLAB_000a2740:\n      if (!bVar24) {\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;\n        *(Layout **)((int)piVar62 + -0x10) = layout;\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;\n        Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;\n        *(uint *)((int)piVar62 + -0x14) = local_168;\n        *(uint *)((int)piVar62 + -0x18) = local_16c;\n        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;\n        *(Layout **)((int)piVar62 + -0x20) = layout;\n        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;\n        Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));\n        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;\n      }\n      if (bVar26) {\n        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start) {\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }\n      if (bVar3 != 0) {\n        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;\n        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;\n        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0;\n        if (uVar69 == 0) {\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }\n        else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68;\n        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;\n      }\n      if (bVar25) {\n        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish) {\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n        puVar58 = debug_types_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n      }\n      if (bVar24) {\n        if (local_190->section_headers_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->section_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbols_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbol_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0;\n      }\n      else {\n        pFVar20 = sd->section_headers;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        pFVar20 = sd->section_names;\n        sd->section_headers = (File_view *)0x0;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        sd->section_names = (File_view *)0x0;\n      }\n    }\n    else {\n      shdr.p_ = local_134;\n      uVar69 = *(uint *)(local_160 + 0x40);\n      local_124 = *(Sized_relobj_file<64,_false> **)(local_160 + 0x44);\n      if (uVar69 < local_148) {\n        local_16c = 0;\n        local_168 = 0;\n        ppuVar57 = local_120;\n        piVar62 = (int *)&stack0xfffffe54;\n        do {\n          pbVar70 = local_144 + uVar69;\n          shdr.p_ = local_134;\n          if (bVar24) {\nLAB_000a22b0:\n            if (bVar26) {\n              if (parameters->options_ == (General_options *)0x0) {\n                piVar62[-2] = (int)"options";\n                piVar62[-3] = 0x5c;\n                piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                piVar62[-5] = 0xa42f6;\n                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n              }\n              if ((parameters->options_->gc_sections_).value != false) {\n                piVar62[-3] = (int)pbVar70;\n                piVar62[-4] = (int)this;\n                piVar62[-5] = 0xa22ee;\n                bVar29 = Relobj::is_section_name_included((Relobj *)piVar62[-4],(char *)piVar62[-3])\n                ;\n                if (bVar29) {\nLAB_000a2c68:\n                  offset._0_4_ = this;\n                  offset._4_4_ = (_Base_ptr)i;\n                  piVar62[-3] = (int)&offset;\n                  piVar62[-4] = (int)symtab->gc_;\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2c8c;\n                  std::\n                  vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                  ::emplace_back<std::pair<gold::Relobj*,_unsigned_int>_>\n                            ((vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                              *)piVar62[-4],(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3]);\n                }\n                else {\n                  piVar62[-2] = (int)pbVar70;\n                  piVar62[-3] = (int)this;\n                  piVar62[-4] = (int)layout;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2313;\n                  bVar29 = Layout::keep_input_section\n                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],\n                                      (char *)piVar62[-2]);\n                  if ((bVar29) ||\n                     ((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)) goto LAB_000a2c68;\n                }\n                piVar62[-3] = (int)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_"\n                ;\n                piVar62[-4] = (int)pbVar70;\n                piVar62[-5] = 0xa234c;\n                sVar33 = strspn((char *)piVar62[-4],(char *)piVar62[-3]);\n                uVar69 = i;\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX;\n                ppuVar57 = local_120;\n                if (pbVar70[sVar33] == 0) {\n                  pGVar13 = symtab->gc_;\n                  piVar62[-4] = (int)pbVar70;\n                  offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                  piVar62[-5] = 0xa3075;\n                  sVar33 = strlen((char *)piVar62[-4]);\n                  piVar62[-1] = 0;\n                  piVar62[-2] = (int)(pbVar70 + sVar33);\n                  piVar62[-3] = (int)pbVar70;\n                  piVar62[-4] = (int)&offset;\n                  piVar62[-5] = 0xa3089;\n                  std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                  _M_construct<char_const*>();\n                  p_Var53 = offset._4_4_;\n                  pSVar51 = (Sized_relobj_file<64,_false> *)offset;\n                  p_Var52 = (pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header\n                            ._M_parent;\n                  p_Var73 = &(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.\n                             _M_header;\n                  shdr_2.p_ = (Shdr_data<64> *)this;\n                  local_174 = p_Var73;\n                  if (p_Var52 == (_Base_ptr)0x0) {\nLAB_000a320c:\n                    piVar62[-3] = (int)&local_f1;\n                    piVar62[-4] = (int)&local_e8;\n                    piVar62[-5] = (int)&std::piecewise_construct;\n                    local_e8 = &offset;\n                    piVar62[-6] = (int)p_Var73;\n                    piVar62[-7] = (int)&pGVar13->cident_sections_;\n                    piVar62[-8] = (int)local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    piVar62[-9] = 0xa324d;\n                    std::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::tuple<>_>\n                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left;\n                  local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                  piVar62[-1] = (int)p_Var36;\n                  piVar62[-2] = (int)&shdr_2;\n                  piVar62[-3] = local_170;\n                  piVar62[-4] = (int)ppuVar57;\n                  piVar62[-5] = 0xa31b4;\n                  p_Var37 = std::\n                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);\n                  if ((p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {\n                    piVar62[-4] = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    piVar62[-5] = 0xa32a8;\n                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);\n                    *pp_Var38 = (_func_int_varargs *)0x0;\n                    pp_Var38[1] = (_func_int_varargs *)this;\n                    pp_Var38[2] = (_func_int_varargs *)uVar69;\n                    local_e4 = local_174[3]._M_right;\n                    piVar62[-4] = 1;\n                    piVar62[-5] = (int)local_174[3]._M_parent;\n                    piVar62[-6] = (int)local_174[2]._M_right;\n                    piVar62[-7] = (int)&local_174[3]._M_left;\n                    piVar62[-8] = (int)local_10c;\n                    piVar62[-9] = 0xa32eb;\n                    std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }\n                    pp_Var38[3] = p_Var36;\n                    ppuVar57 = (undefined **)(local_170 * 4);\n                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];\n                    if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }\n                    local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);\n                  }\n                  if ((Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                    piVar62[-5] = 0xa31e7;\n                    operator_delete((void *)piVar62[-4]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;\n                    ppuVar57 = local_120;\n                  }\n                }\n              }\n            }\n            if ((bVar3 == 0) ||\n               ((local_124 != (Sized_relobj_file<64,_false> *)0x9 &&\n                (local_124 != (Sized_relobj_file<64,_false> *)0x4)))) {\n              if ((local_124 != (Sized_relobj_file<64,_false> *)0x11) || (bVar4 == false)) {\n                piVar62[-3] = (int)&shdr;\n                piVar62[-4] = (int)this;\n                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */\n                piVar62[-5] = 0xa29c8;\n                bVar29 = check_eh_frame_flags\n                                   ((Sized_relobj_file<64,_false> *)piVar62[-4],\n                                    (Shdr<64,_false> *)piVar62[-3]);\n                uVar69 = i;\n                bVar75 = false;\n                bVar29 = !bVar29;\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_03;\n                if (!bVar29) {\n                  SVar49.p_ = (Shdr_data<64> *)0xa;\n                  pbVar65 = pbVar70;\n                  pbVar72 = (byte *)".eh_frame";\n                  do {\n                    if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    }\n                    else if (this->is_deferred_layout_ == false) {\n                      if (eh_frame_sections.\n                          super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                          _M_finish ==\n                          eh_frame_sections.\n                          super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                          _M_end_of_storage) {\n                        piVar62[-2] = (int)&i;\n                        piVar62[-3] = (int)eh_frame_sections.\n                                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                           ._M_impl._M_finish;\n                        piVar62[-4] = (int)&eh_frame_sections;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa426e;\n                        std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                        _M_realloc_insert<unsigned_int_const&>\n                                  ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_29;\n                      }\n                      else {\n                        *eh_frame_sections.\n                         super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                         _M_finish = i;\n                        eh_frame_sections.\n                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                        _M_finish = eh_frame_sections.\n                                    super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                    _M_impl._M_finish + 1;\n                      }\n                    }\n                    else {\n                      uVar39 = puVar31[i];\n                      uVar11 = puVar30[i];\n                      piVar62[-1] = 0xa2a5f;\n                      std::__cxx11::\n                      basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                      basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                      local_6c = uVar69;\n                      local_68 = uVar11;\n                      local_64 = uVar39;\n                      local_60 = (Input_file *)local_134->sh_name;\n                      local_58 = (int)local_134->sh_flags;\n                      local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                      local_50 = *(undefined4 *)&local_134->sh_addr;\n                      local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                      local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                      local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                      local_40 = *(pointer *)&local_134->sh_size;\n                      local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                      local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                  *)local_134->sh_link;\n                      local_34 = (Object_merge_map *)local_134->sh_info;\n                      local_30 = *(undefined4 *)&local_134->sh_addralign;\n                      local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                      local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                      local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                      piVar62[-3] = (int)&offset;\n                      piVar62[-4] = (int)&this->deferred_layout_;\n                      local_5c = pSVar5;\n                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */\n                      piVar62[-5] = 0xa2aea;\n                      std::\n                      vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                      ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                                ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_04;\n                      ppuVar57 = (undefined **)uVar69;\n                      if ((Sized_relobj_file<64,_false> *)offset !=\n                          (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                        piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                        piVar62[-5] = 0xa2b0a;\n                        operator_delete((void *)piVar62[-4]);\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_05;\n                        ppuVar57 = local_120;\n                      }\n                    }\n                    goto LAB_000a23a1;\n                  }\n                }\n                if (bVar24) {\n                  pGVar34 = parameters->options_;\n                  if (pGVar34 == (General_options *)0x0) {\n                    piVar62[-1] = (int)ppuVar57;\n                    piVar62[-2] = (int)"options";\n                    piVar62[-3] = 0x5c;\n                    piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    piVar62[-5] = 0xa4330;\n                    do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                  }\n                  iVar50 = i * 4;\n                  pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                            super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                            ._M_impl._M_start[i];\n                  SVar49.p_ = (Shdr_data<64> *)this;\n                  if ((pGVar34->gc_sections_).value == false) {\nLAB_000a2f0d:\n                    if (pGVar34->icf_status_ != ICF_NONE) {\n                      if (pOVar44 == (Output_section *)0x0) {\n                        puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                  super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                  ._M_impl._M_start;\n                        uVar69 = *(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i];\n                        SVar49.p_ = shdr.p_;\n                        if (uVar69 != 0xffffffff) {\n                          piVar62[-1] = uVar69;\n                          piVar62[-2] = (int)"do_layout";\n                          piVar62[-3] = 0x6f9;\n                          piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = (int)&UNK_000a2f61;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      SVar49.p_ = shdr.p_;\n                      if (((shdr.p_)->sh_flags & 2) != 0) {\n                        piVar62[-2] = i;\n                        piVar62[-3] = (int)this;\n                        piVar62[-4] = (int)symtab->icf_;\n                        piVar62[-5] = 0xa3ddb;\n                        bVar29 = Icf::is_section_folded\n                                           ((Icf *)piVar62[-4],(Relobj *)piVar62[-3],piVar62[-2]);\n                        if (bVar29) {\n                          if (parameters->options_ == (General_options *)0x0) {\n                            piVar62[-1] = iVar50;\n                            piVar62[-2] = (int)"options";\n                            piVar62[-3] = 0x5c;\n                            piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            piVar62[-5] = 0xa44a9;\n                            do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])\n                            ;\n                          }\n                          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_20;\n                          ppuVar57 = local_120;\n                          uVar69 = i;\n                          if ((parameters->options_->print_icf_sections_).value == false)\n                          goto LAB_000a2c3a;\n                          piVar62[-1] = i;\n                          piVar62[-2] = (int)this;\n                          piVar62[-3] = (int)symtab->icf_;\n                          piVar62[-4] = (int)&local_11c;\n                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */\n                          piVar62[-5] = 0xa4081;\n                          Icf::get_folded_section\n                                    ((Icf *)piVar62[-3],(Relobj *)piVar62[-2],piVar62[-1]);\n                          iVar50 = *local_11c;\n                          iVar12 = local_11c[1];\n                          piVar62[-2] = local_118;\n                          piVar62[-3] = (int)local_11c;\n                          piVar62[-4] = (int)&offset;\n                          pcVar21 = *(code **)(iVar50 + 0x40);\n                          piVar62[-5] = 0xa409e;\n                          (*pcVar21)();\n                          pSVar51 = (Sized_relobj_file<64,_false> *)offset;\n                          pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    name_._M_dataplus._M_p;\n                          p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    _vptr_Object[0x10];\n                          if (p_Var36 == do_section_name) {\n                            piVar62[-3] = i;\n                            piVar62[-4] = (int)&this->elf_file_;\n                            piVar62[-5] = (int)&shdr_2;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                            piVar62[-6] = 0xa40ec;\n                            elfcpp::Elf_file<64,_false,_gold::Object>::section_name\n                                      ((Elf_file<64,_false,_gold::Object> *)piVar62[-4],piVar62[-3])\n                            ;\n                            piVar61 = piVar62 + -4;\n                          }\n                          else {\n                            piVar62[-3] = i;\n                            piVar62[-4] = (int)this;\n                            piVar61 = piVar62 + -5;\n                            piVar62[-5] = (int)&shdr_2;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                            piVar62[-6] = 0xa42b7;\n                            (*p_Var36)();\n                          }\n                          SVar49.p_ = shdr_2.p_;\n                          pcVar28 = program_name;\n                          piVar61[-1] = (int)\n                                        "%s: ICF folding section \'%s\' in file \'%s\' into \'%s\' in file \'%s\'"\n                          ;\n                          piVar61[-2] = 0xa4120;\n                          uVar39 = gettext();\n                          *piVar61 = iVar12;\n                          piVar61[-1] = (int)pSVar51;\n                          piVar61[-2] = (int)pcVar22;\n                          piVar61[-3] = (int)SVar49.p_;\n                          piVar61[-4] = (int)pcVar28;\n                          piVar61[-5] = uVar39;\n                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */\n                          piVar61[-6] = 0xa4146;\n                          gold_info((char *)piVar61[-5]);\n                          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_24;\n                          if (shdr_2.p_ != (Shdr_data<64> *)local_94) {\n                            piVar61[-1] = (int)shdr_2.p_;\n                            piVar61[-2] = 0xa4162;\n                            operator_delete((void *)piVar61[-1]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_25;\n                          }\n                          piVar62 = piVar61 + 3;\n                          if ((Sized_relobj_file<64,_false> *)offset !=\n                              (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                            piVar61[-1] = (int)(Sized_relobj_file<64,_false> *)offset;\n                            piVar61[-2] = 0xa417e;\n                            operator_delete((void *)piVar61[-1]);\n                            piVar62 = piVar61 + 3;\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_26;\n                          }\n                          goto LAB_000a4181;\n                        }\n                        iVar50 = i * 4;\n                        pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                                  ._M_impl._M_start[i];\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_20;\n                        ppuVar57 = local_120;\n                      }\n                    }\n                  }\n                  else {\n                    if (pOVar44 == (Output_section *)0x0) {\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      if ((*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]) != 0xffffffff) {\n                        piVar62[-1] = (int)this;\n                        piVar62[-2] = (int)"do_layout";\n                        piVar62[-3] = 0x6e4;\n                        piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = (int)&UNK_000a342d;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((shdr.p_)->sh_flags & 2) != 0) {\n                      offset._4_4_ = (_Base_ptr)i;\n                      pGVar13 = symtab->gc_;\n                      offset._0_4_ = this;\n                      piVar62[-2] = (int)&offset;\n                      piVar62[-3] = (int)&pGVar13->referenced_list_;\n                      piVar62[-4] = (int)&local_110;\n                      piVar62[-5] = 0xa2ed3;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2]);\n                      pGVar34 = parameters->options_;\n                      if (local_110 != 0) {\n                        if (pGVar34 == (General_options *)0x0) {\n                          piVar62[-1] = 0;\n                          piVar62[-2] = (int)"options";\n                          piVar62[-3] = 0x5c;\n                          piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = 0xa434c;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }\n                        iVar50 = i * 4;\n                        pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                                  ._M_impl._M_start[i];\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;\n                        ppuVar57 = (undefined **)this;\n                        goto LAB_000a2f0d;\n                      }\n                      if (pGVar34 == (General_options *)0x0) {\n                        piVar62[-1] = 0;\n                        piVar62[-2] = (int)"options";\n                        piVar62[-3] = 0x5c;\n                        piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa43a7;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;\n                      uVar69 = i;\n                      if ((pGVar34->print_gc_sections_).value == false) goto LAB_000a2c3a;\n                      pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                name_._M_dataplus._M_p;\n                      p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                _vptr_Object[0x10];\n                      if (p_Var36 == do_section_name) {\n                        piVar62[-2] = i;\n                        piVar62[-3] = (int)&this->elf_file_;\n                        piVar62[-4] = (int)&offset;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa3909;\n                        elfcpp::Elf_file<64,_false,_gold::Object>::section_name\n                                  ((Elf_file<64,_false,_gold::Object> *)piVar62[-3],piVar62[-2]);\n                        puVar60 = piVar62 + -3;\n                      }\n                      else {\n                        piVar62[-2] = i;\n                        piVar62[-3] = (int)this;\n                        puVar60 = piVar62 + -4;\n                        piVar62[-4] = (int)&offset;\n                        piVar62[-5] = 0xa42a2;\n                        (*p_Var36)();\n                      }\n                      pSVar51 = (Sized_relobj_file<64,_false> *)offset;\n                      pcVar28 = program_name;\n                      puVar60[-1] = "%s: removing unused section from \'%s\' in file \'%s\'";\n                      puVar60[-2] = 0xa3934;\n                      uVar39 = gettext();\n                      puVar60[2] = pcVar22;\n                      puVar60[1] = pSVar51;\n                      *puVar60 = pcVar28;\n                      puVar60[-1] = uVar39;\n                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */\n                      puVar60[-2] = 0xa394e;\n                      gold_info((char *)puVar60[-1]);\n                      piVar62 = puVar60 + 3;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_14;\n                      if ((Sized_relobj_file<64,_false> *)offset !=\n                          (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                        puVar60[-1] = (Sized_relobj_file<64,_false> *)offset;\n                        puVar60[-2] = 0xa3968;\n                        operator_delete((void *)puVar60[-1]);\n                        piVar62 = puVar60 + 3;\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_15;\n                      }\nLAB_000a4181:\n                      ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                      uVar69 = i;\n                      goto LAB_000a2c3a;\n                    }\n                    SVar49 = shdr;\n                    if (pGVar34->icf_status_ != ICF_NONE) goto LAB_000a2cf0;\n                  }\n                  if (pOVar44 != (Output_section *)0x2) {\n                    if (bVar26) goto LAB_000a2b6b;\nLAB_000a2d10:\n                    uVar69 = i;\n                    iVar12 = *(int *)((int)puVar30 + iVar50);\n                    piVar62[-4] = (int)&offset;\n                    piVar62[-5] = *(undefined4 *)((int)puVar31 + iVar50);\n                    piVar62[-6] = iVar12;\n                    piVar62[-7] = (int)local_124;\n                    piVar62[-8] = (int)&shdr;\n                    piVar62[-9] = (int)pbVar70;\n                    piVar62[-10] = i;\n                    piVar62[-0xb] = (int)this;\n                    piVar62[-0xc] = (int)layout;\n                    piVar62[-0xd] = 0xa2d54;\n                    pOVar44 = Layout::layout<64,_false>\n                                        ((Layout *)piVar62[-0xc],\n                                         (Sized_relobj_file<64,_false> *)piVar62[-0xb],piVar62[-10],\n                                         (char *)piVar62[-9],(Shdr<64,_false> *)piVar62[-8],\n                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4]);\n                    *(Output_section **)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = pOVar44;\n                    ppuVar57 = (undefined **)\n                               ((uint)offset._4_4_ & (uint)(Sized_relobj_file<64,_false> *)offset);\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start + uVar69;\n                    if ((Sized_relobj_file<64,_false> *)ppuVar57 ==\n                        (Sized_relobj_file<64,_false> *)0xffffffff) {\n                      *(undefined4 *)puVar18 = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + 4) = 0xffffffff;\n                    }\n                    else {\n                      *(Sized_relobj_file<64,_false> **)puVar18 =\n                           (Sized_relobj_file<64,_false> *)offset;\n                      *(_Base_ptr *)((int)puVar18 + 4) = offset._4_4_;\n                    }\n                    if ((((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff) && (iVar12 != 0)) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.\n                      relocs_must_follow_section_writes_ = true;\n                    }\n                    SVar49.p_ = (Shdr_data<64> *)(Sized_relobj_file<64,_false> *)offset;\n                    if (bVar4 == false) {\n                      if (parameters->options_ == (General_options *)0x0) {\n                        piVar62[-1] = 0;\n                        piVar62[-2] = (int)"options";\n                        piVar62[-3] = 0x5c;\n                        piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa43fb;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }\n                      if ((parameters->options_->gdb_index_).value != false) {\n                        bVar29 = false;\n                        bVar75 = ((shdr.p_)->sh_flags & 2) == 0;\n                        if (bVar75) {\n                          SVar49.p_ = (Shdr_data<64> *)0xc;\n                          pbVar65 = pbVar70;\n                          pbVar72 = (byte *)".debug_info";\n                          do {\n                            if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                (Sized_relobj_file<64,_false> *)0x0) break;\n                            SVar49.p_ = (Shdr_data<64> *)\n                                        ((int)&((Sized_relobj_file<64,_false> *)\n                                               ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                            bVar29 = *pbVar65 < *pbVar72;\n                            bVar75 = *pbVar65 == *pbVar72;\n                            pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                            pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                          } while (bVar75);\n                          bVar76 = false;\n                          bVar29 = (!bVar29 && !bVar75) == bVar29;\n                          if (!bVar29) {\n                            SVar49.p_ = (Shdr_data<64> *)0xd;\n                            pbVar65 = pbVar70;\n                            pbVar72 = (byte *)".zdebug_info";\n                            do {\n                              if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                  (Sized_relobj_file<64,_false> *)0x0) break;\n                              SVar49.p_ = (Shdr_data<64> *)\n                                          ((int)&((Sized_relobj_file<64,_false> *)\n                                                 ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                              bVar76 = *pbVar65 < *pbVar72;\n                              bVar29 = *pbVar65 == *pbVar72;\n                              pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                              pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                            } while (bVar29);\n                            bVar75 = false;\n                            bVar29 = (!bVar76 && !bVar29) == bVar76;\n                            if (!bVar29) {\n                              SVar49.p_ = (Shdr_data<64> *)0xd;\n                              pbVar65 = pbVar70;\n                              pbVar72 = (byte *)".debug_types";\n                              do {\n                                if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                    (Sized_relobj_file<64,_false> *)0x0) break;\n                                SVar49.p_ = (Shdr_data<64> *)\n                                            ((int)&((Sized_relobj_file<64,_false> *)\n                                                   ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                bVar75 = *pbVar65 < *pbVar72;\n                                bVar29 = *pbVar65 == *pbVar72;\n                                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                              } while (bVar29);\n                              bVar76 = false;\n                              bVar29 = (!bVar75 && !bVar29) == bVar75;\n                              if (!bVar29) {\n                                SVar49.p_ = (Shdr_data<64> *)0xe;\n                                pbVar65 = (byte *)".zdebug_types";\n                                do {\n                                  if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections;\n              piVar62[-5] = 0xa3e57;\n              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n              _M_realloc_insert<unsigned_int_const&>\n                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)piVar62[-4],\n                         (uint *)piVar62[-3],(uint *)piVar62[-2]);\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_21;\n            }\n            else {\n              *reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish = i;\n              reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n              ._M_finish = reloc_sections.\n                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                           _M_finish + 1;\n            }\n          }\n          else {\n            piVar62[-1] = (int)symtab;\n            piVar62[-2] = i;\n            piVar62[-3] = (int)pbVar70;\n            piVar62[-4] = (int)this;\n            piVar62[-5] = 0xa2406;\n            bVar29 = Object::handle_gnu_warning_section\n                               ((Object *)piVar62[-4],(char *)piVar62[-3],piVar62[-2],\n                                (Symbol_table *)piVar62[-1]);\n            bVar75 = !bVar29;\n            if (bVar29) {\n              bVar75 = false;\n              bVar29 = bVar4 == false;\n              if (bVar29) {\n                if (parameters->options_ == (General_options *)0x0) {\n                  piVar62[-1] = 0;\n                  piVar62[-2] = (int)"options";\n                  piVar62[-3] = 0x5c;\n                  piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa4433;\n                  do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                }\n                bVar75 = false;\n                bVar29 = (parameters->options_->shared_).value == false;\n                if (bVar29) {\n                  puVar19 = omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                            super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p +\n                            (i >> 5);\n                  bVar75 = false;\n                  *puVar19 = *puVar19 | 1 << ((byte)i & 0x1f);\n                  bVar29 = *puVar19 == 0;\n                }\n              }\n            }\n            iVar50 = 0x10;\n            pbVar65 = pbVar70;\n            pbVar72 = (byte *)".note.GNU-stack";\n            do {\n              pbVar71 = pbVar72;\n              if (iVar50 == 0) break;\n              iVar50 = iVar50 + -1;\n              pbVar71 = pbVar72 + (uint)bVar77 * -2 + 1;\n              bVar75 = *pbVar65 < *pbVar72;\n              bVar29 = *pbVar65 == *pbVar72;\n              pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n              pbVar72 = pbVar71;\n            } while (bVar29);\n            if ((!bVar75 && !bVar29) == bVar75) {\n              local_137 = true;\n              local_16c = (uint)(shdr.p_)->sh_flags | local_16c;\n              local_168 = *(uint *)((int)&(shdr.p_)->sh_flags + 4) | local_168;\n              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[i >> 5] | 1 << ((byte)i & 0x1f);\n            }\n            piVar62[-3] = (int)pbVar70;\n            piVar62[-4] = (int)this;\n            piVar62[-5] = 0xa2497;\n            bVar29 = Object::handle_split_stack_section((Object *)piVar62[-4],(char *)piVar62[-3]);\n            SVar49.p_ = (Shdr_data<64> *)i;\n            pPVar27 = parameters;\n            bVar48 = (byte)i;\n            if ((bVar29) && (bVar4 == false)) {\n              if (parameters->options_ == (General_options *)0x0) {\n                piVar62[-1] = (int)pbVar71;\n                piVar62[-2] = (int)"options";\n                piVar62[-3] = 0x5c;\n                piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                piVar62[-5] = 0xa444f;\n                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n              }\n              if ((parameters->options_->shared_).value == false) {\n                omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5] |\n                     1 << (bVar48 & 0x1f);\n              }\n            }\n            if (pPVar27->target_ == (Target *)0x0) {\n              piVar62[-2] = (int)"target";\n              piVar62[-3] = 0x69;\n              piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n              piVar62[-5] = 0xa4314;\n              do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n            }\n            iVar50 = *(int *)(*(int *)(pPVar27->target_ + 4) + 0x50);\n            bVar29 = iVar50 == 0;\n            uVar23 = (uint3)(i >> 8);\n            if (bVar29) {\nLAB_000a2b98:\n              bVar75 = false;\n              iVar50 = 0x10;\n              pbVar65 = pbVar70;\n              pbVar72 = (byte *)".gnu.attributes";\n              do {\n                if (iVar50 == 0) break;\n                iVar50 = iVar50 + -1;\n                bVar75 = *pbVar65 < *pbVar72;\n                bVar29 = *pbVar65 == *pbVar72;\n                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n              } while (bVar29);\n              if ((!bVar75 && !bVar29) == bVar75) goto LAB_000a24fe;\n              if (local_124 != (Sized_relobj_file<64,_false> *)0x7) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar75 = local_124 == (Sized_relobj_file<64,_false> *)0x7;\n              bVar29 = local_124 < (Sized_relobj_file<64,_false> *)0x7;\n              iVar50 = 0x13;\n              pbVar65 = pbVar70;\n              pbVar72 = (byte *)".note.gnu.property";\n              do {\n                if (iVar50 == 0) break;\n                iVar50 = iVar50 + -1;\n                bVar29 = *pbVar65 < *pbVar72;\n                bVar75 = *pbVar65 == *pbVar72;\n                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n              } while (bVar75);\n              if ((!bVar29 && !bVar75) != bVar29) {\n                bVar29 = (1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                         [(uint)SVar49.p_ >> 5]) != 0;\n                ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);\n                if (bVar29) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar29 = false;\n                bVar75 = ((shdr.p_)->sh_flags & 0x200) == 0;\n                pSVar51 = (Sized_relobj_file<64,_false> *)SVar49.p_;\n                if (bVar75) {\n                  pSVar51 = (Sized_relobj_file<64,_false> *)0xd;\n                  pbVar65 = pbVar70;\n                  pbVar72 = (byte *)".gnu.linkonce";\n                  do {\n                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;\n                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);\n                    bVar29 = *pbVar65 < *pbVar72;\n                    bVar75 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar75);\n                  if ((!bVar29 && !bVar75) == bVar29) {\n                    piVar62[-4] = (int)&shdr;\n                    piVar62[-5] = (int)pbVar70;\n                    piVar62[-6] = (int)SVar49.p_;\n                    piVar62[-7] = (int)layout;\n                    piVar62[-8] = (int)this;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    piVar62[-9] = 0xa352c;\n                    bVar29 = include_linkonce_section\n                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4]);\n                    pSVar51 = extraout_ECX_11;\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;\n                    uVar69 = i;\n                    if (!bVar29) goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                pIVar64 = layout->incremental_inputs_;\n                SVar49.p_ = (Shdr_data<64> *)pSVar51;\n                if ((pIVar64 == (Incremental_inputs *)0x0) || ((char)ppuVar57 != '\0'))\n                goto LAB_000a22b0;\nLAB_000a259c:\n                piVar62[-4] = (int)local_124;\n                piVar62[-5] = 0xa25b0;\n                bVar29 = can_incremental_update(piVar62[-4]);\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_00;\n                ppuVar57 = local_120;\n                if (bVar29) {\n                  local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4);\n                  local_154 = (undefined4)(shdr.p_)->sh_size;\n                  pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                            compressed_sections_;\n                  if (pCVar10 != (Compressed_section_map *)0x0) {\n                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;\n                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;\n                    p_Var52 = &p_Var1->_M_header;\n                    if (p_Var73 != (_Base_ptr)0x0) {\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }\n                  }\n                  piVar62[-3] = local_150;\n                  piVar62[-4] = local_154;\n                  piVar62[-5] = (int)pbVar70;\n                  piVar62[-6] = i;\n                  piVar62[-7] = (int)this;\n                  piVar62[-8] = (int)pIVar64;\n                  piVar62[-9] = 0xa263f;\n                  Incremental_inputs::report_input_section\n                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01;\n                }\n                goto LAB_000a22b0;\n              }\n              piVar62[-2] = (int)SVar49.p_;\n              piVar62[-3] = (int)layout;\n              piVar62[-4] = (int)this;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              piVar62[-5] = 0xa326f;\n              layout_gnu_property_section\n                        ((Sized_relobj_file<64,_false> *)piVar62[-4],(Layout *)piVar62[-3],\n                         piVar62[-2]);\n              ppuVar57 = (undefined **)(i >> 5);\n              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] | 1 << ((byte)i & 0x1f);\n              SVar49.p_ = (Shdr_data<64> *)i;\n              uVar69 = i;\n            }\n            else {\n              piVar62[-3] = iVar50;\n              piVar62[-4] = (int)pbVar70;\n              piVar62[-5] = 0xa24ed;\n              iVar50 = strcmp((char *)piVar62[-4],(char *)piVar62[-3]);\n              bVar29 = iVar50 == 0;\n              if (!bVar29) goto LAB_000a2b98;\nLAB_000a24fe:\n              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] |\n                   1 << (bVar48 & 0x1f);\n              if (local_124 == (Sized_relobj_file<64,_false> *)0x7) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar29 = (1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                       [(uint)SVar49.p_ >> 5]) != 0;\n              ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);\n              if (!bVar29) {\n                ppuVar57 = (undefined **)0x0;\n                if (local_124 != (Sized_relobj_file<64,_false> *)0x11) goto LAB_000a2551;\n                piVar62[-4] = (int)&omit;\n                piVar62[-5] = local_148;\n                piVar62[-6] = (int)local_144;\n                piVar62[-7] = (int)local_160;\n                piVar62[-8] = (int)pbVar70;\n                piVar62[-9] = (int)SVar49.p_;\n                piVar62[-10] = (int)layout;\n                piVar62[-0xb] = (int)symtab;\n                piVar62[-0xc] = (int)this;\n                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */\n                piVar62[-0xd] = 0xa3371;\n                bVar29 = include_section_group\n                                   ((Sized_relobj_file<64,_false> *)piVar62[-0xc],\n                                    (Symbol_table *)piVar62[-0xb],(Layout *)piVar62[-10],piVar62[-9]\n                                    ,(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4]);\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_10;\n                uVar69 = i;\n                if (!bVar29) goto LAB_000a2c3a;\n                ppuVar57 = (undefined **)0x0;\n                pSVar51 = extraout_ECX_10;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              pIVar64 = layout->incremental_inputs_;\n              uVar69 = (uint)SVar49.p_;\n              if (pIVar64 == (Incremental_inputs *)0x0) {\n                if ((char)ppuVar57 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)ppuVar57 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            i = uVar69;\n            (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n            super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n            _M_impl._M_start[i] = (Output_section *)0x0;\n            puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                      ._M_impl._M_start;\n            *(undefined4 *)(puVar18 + i) = 0xffffffff;\n            *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n          }\nLAB_000a23a1:\n          uVar63 = i + 1;\n          pSVar67 = local_134 + 1;\n          i = uVar63;\n          if (uVar6 <= uVar63) goto LAB_000a2740;\n          shdr.p_ = pSVar67;\n          uVar69 = pSVar67->sh_name;\n          local_124 = (Sized_relobj_file<64,_false> *)local_134[1].sh_type;\n          puVar59 = (undefined1 *)piVar62;\n          local_134 = pSVar67;\n        } while (uVar69 < local_148);\n      }\n      uVar6 = i;\n      shdr.p_ = local_134;\n      *(char **)(puVar59 + -0x10) = "bad section name offset for section %u: %lu";\n      *(undefined4 *)(puVar59 + -0x14) = 0xa3657;\n      uVar39 = gettext();\n      *(uint *)(puVar59 + -4) = uVar69;\n      *(uint *)(puVar59 + -8) = uVar6;\n      *(undefined4 *)(puVar59 + -0xc) = uVar39;\n      *(Sized_relobj_file<64,_false> **)(puVar59 + -0x10) = this;\n      *(undefined4 *)(puVar59 + -0x14) = 0xa3665;\n      Object::error(*(Object **)(puVar59 + -0x10),*(char **)(puVar59 + -0xc));\n      piVar62 = (int *)puVar59;\n    }\n    if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n        ._M_start != (pointer)0x0) {\n      *(pointer *)((int)piVar62 + -0x10) =\n           debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n           _M_impl._M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28af;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n    if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0) {\n      *(pointer *)((int)piVar62 + -0x10) =\n           debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n           _M_impl._M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28cb;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n    if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0) {\n      *(pointer *)((int)piVar62 + -0x10) =\n           eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n           ._M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28e7;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n    if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0) {\n      *(pointer *)((int)piVar62 + -0x10) =\n           reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n           _M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa2903;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n    if (omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n        super__Bit_iterator_base._M_p != (_Bit_type *)0x0) {\n      *(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa291f;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n  }\n  *(undefined4 **)((int)piVar62 + -0x10) = puVar31;\n  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2938;\n  operator_delete(*(void **)((int)piVar62 + -0x10));\n  *(undefined4 **)((int)piVar62 + -0x10) = puVar30;\n  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2944;\n  operator_delete(*(void **)((int)piVar62 + -0x10));\n  return;\n}\n\n" comment comment comment comment (declaration "void __thiscall\ngold::Sized_relobj_file<64,_false>::do_layout\n          (Sized_relobj_file<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Read_symbols_data *sd)\n\n{\n  _Rb_tree_header *p_Var1;" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::" identifier : :) identifier (ERROR "<64" < number_literal) , (ERROR "_false>::do_layout\n          (Sized_relobj_file<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Read_symbols_data *sd)\n\n{\n  _Rb_tree_header" identifier > : : (function_declarator "do_layout\n          (Sized_relobj_file<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Read_symbols_data *sd)" identifier (parameter_list "(Sized_relobj_file<64,_false> *this,Symbol_table *symtab,Layout *layout,\n          Read_symbols_data *sd)" ( (parameter_declaration "Sized_relobj_file" type_identifier) (ERROR "<64" < number_literal) , (parameter_declaration "_false> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) , (parameter_declaration "Symbol_table *symtab" type_identifier (pointer_declarator "*symtab" * identifier)) , (parameter_declaration "Layout *layout" type_identifier (pointer_declarator "*layout" * identifier)) , (parameter_declaration "Read_symbols_data *sd" type_identifier (pointer_declarator "*sd" * identifier)) ))) { identifier) (pointer_declarator "*p_Var1" * identifier) ;) (declaration "_Base_ptr *pp_Var2;" type_identifier (pointer_declarator "*pp_Var2" * identifier) ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "bool bVar4;" primitive_type identifier ;) (expression_statement "Sized_relobj_file<64,_false> *pSVar5;" (update_expression "Sized_relobj_file<64,_false> *pSVar5" (binary_expression "Sized_relobj_file<64,_false> *pSVar5" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*pSVar5" * identifier)) --) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "Plugin_manager *pPVar7;" type_identifier (pointer_declarator "*pPVar7" * identifier) ;) (declaration "Elf_Word EVar8;" type_identifier identifier ;) (declaration "Input_file *this_00;" type_identifier (pointer_declarator "*this_00" * identifier) ;) (declaration "iterator __position;" type_identifier identifier ;) (declaration "pointer pDVar9;" type_identifier identifier ;) (declaration "Compressed_section_map *pCVar10;" type_identifier (pointer_declarator "*pCVar10" * identifier) ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "Garbage_collection *pGVar13;" type_identifier (pointer_declarator "*pGVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "pointer puVar15;" type_identifier identifier ;) (declaration "pointer pDVar16;" type_identifier identifier ;) (declaration "pointer ppOVar17;" type_identifier identifier ;) (declaration "pointer puVar18;" type_identifier identifier ;) (declaration "uint *puVar19;" type_identifier (pointer_declarator "*puVar19" * identifier) ;) (declaration "File_view *pFVar20;" type_identifier (pointer_declarator "*pFVar20" * identifier) ;) (declaration "code *pcVar21;" type_identifier (pointer_declarator "*pcVar21" * identifier) ;) (declaration "pointer pcVar22;" type_identifier identifier ;) (declaration "uint3 uVar23;" type_identifier identifier ;) (declaration "bool bVar24;" primitive_type identifier ;) (declaration "bool bVar25;" primitive_type identifier ;) (declaration "bool bVar26;" primitive_type identifier ;) (declaration "Parameters *pPVar27;" type_identifier (pointer_declarator "*pPVar27" * identifier) ;) (declaration "char *pcVar28;" primitive_type (pointer_declarator "*pcVar28" * identifier) ;) (declaration "bool bVar29;" primitive_type identifier ;) (declaration "difference_type __d;" type_identifier identifier ;) (declaration "undefined4 *puVar30;" type_identifier (pointer_declarator "*puVar30" * identifier) ;) (declaration "undefined4 *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "undefined4 *puVar32;" type_identifier (pointer_declarator "*puVar32" * identifier) ;) (declaration "size_t sVar33;" primitive_type identifier ;) (declaration "General_options *pGVar34;" type_identifier (pointer_declarator "*pGVar34" * identifier) ;) (declaration "_Base_ptr p_Var35;" type_identifier identifier ;) (declaration "_func_int_varargs *p_Var36;" type_identifier (pointer_declarator "*p_Var36" * identifier) ;) (declaration "__node_base *p_Var37;" type_identifier (pointer_declarator "*p_Var37" * identifier) ;) (declaration "_func_int_varargs **pp_Var38;" type_identifier (pointer_declarator "**pp_Var38" * (pointer_declarator "*pp_Var38" * identifier)) ;) (declaration "undefined4 uVar39;" type_identifier identifier ;) (declaration "pointer pDVar40;" type_identifier identifier ;) (ERROR "anon_union_16_2_edb7204a_for_basic_string<char," (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) ,) (labeled_statement "_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar41;" statement_identifier (ERROR "::char_traits<char>,_std:" : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) :) : (expression_statement "allocator<char>_>_9\n  *paVar41;" (binary_expression "allocator<char>_>_9\n  *paVar41" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n  *paVar41" identifier * identifier)) ;)) (ERROR "anon_union_16_2_edb7204a_for_basic_string<char," (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) ,) (labeled_statement "_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar42;" statement_identifier (ERROR "::char_traits<char>,_std:" : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) :) : (expression_statement "allocator<char>_>_9\n  *paVar42;" (binary_expression "allocator<char>_>_9\n  *paVar42" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n  *paVar42" identifier * identifier)) ;)) (declaration "Relocatable_relocs *pRVar43;" type_identifier (pointer_declarator "*pRVar43" * identifier) ;) (declaration "Output_section *pOVar44;" type_identifier (pointer_declarator "*pOVar44" * identifier) ;) (declaration "uchar *puVar45;" type_identifier (pointer_declarator "*puVar45" * identifier) ;) (ERROR "vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *pvVar46" (binary_expression "vector<gold" identifier < identifier) : : (binary_expression "Relocatable_relocs*,_std" identifier * (ERROR "," ,) identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Relocatable_relocs*>_> *pvVar46" (binary_expression "Relocatable_relocs*>_" identifier * (ERROR ">" >) identifier) > (pointer_expression "*pvVar46" * identifier))) (expression_statement ";" ;) (declaration "pointer ppRVar47;" type_identifier identifier ;) (declaration "byte bVar48;" type_identifier identifier ;) (declaration "Shdr SVar49;" type_identifier identifier ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX" * identifier)) --) ;) (declaration "int iVar50;" primitive_type identifier ;) (expression_statement "Sized_relobj_file<64,_false> *pSVar51;" (update_expression "Sized_relobj_file<64,_false> *pSVar51" (binary_expression "Sized_relobj_file<64,_false> *pSVar51" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*pSVar51" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_00;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_00" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_00" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_00" * identifier)) --) ;) (declaration "_Base_ptr p_Var52;" type_identifier identifier ;) (declaration "_Base_ptr p_Var53;" type_identifier identifier ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_01;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_01" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_01" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_01" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_02;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_02" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_02" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_02" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_03;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_03" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_03" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_03" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_04;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_04" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_04" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_04" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_05;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_05" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_05" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_05" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_06;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_06" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_06" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_06" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_07;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_07" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_07" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_07" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_08;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_08" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_08" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_08" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_09;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_09" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_09" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_09" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_10;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_10" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_10" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_10" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_11;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_11" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_11" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_11" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_12;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_12" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_12" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_12" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_13;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_13" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_13" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_13" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_14;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_14" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_14" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_14" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_15;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_15" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_15" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_15" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_16;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_16" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_16" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_16" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_17;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_17" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_17" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_17" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_18;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_18" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_18" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_18" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_19;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_19" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_19" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_19" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_20;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_20" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_20" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_20" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_21;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_21" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_21" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_21" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_22;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_22" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_22" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_22" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_23;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_23" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_23" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_23" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_24;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_24" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_24" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_24" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_25;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_25" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_25" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_25" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_26;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_26" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_26" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_26" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_27;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_27" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_27" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_27" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_28;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_28" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_28" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_28" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_29;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_29" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_29" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_29" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_30;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_30" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_30" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_30" * identifier)) --) ;) (expression_statement "Sized_relobj_file<64,_false> *extraout_ECX_31;" (update_expression "Sized_relobj_file<64,_false> *extraout_ECX_31" (binary_expression "Sized_relobj_file<64,_false> *extraout_ECX_31" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_ECX_31" * identifier)) --) ;) (declaration "pointer ppOVar54;" type_identifier identifier ;) (declaration "pointer pDVar55;" type_identifier identifier ;) (declaration "uchar *puVar56;" type_identifier (pointer_declarator "*puVar56" * identifier) ;) (declaration "undefined **ppuVar57;" type_identifier (pointer_declarator "**ppuVar57" * (pointer_declarator "*ppuVar57" * identifier)) ;) (declaration "pointer puVar58;" type_identifier identifier ;) (declaration "undefined1 *puVar59;" type_identifier (pointer_declarator "*puVar59" * identifier) ;) (declaration "undefined4 *puVar60;" type_identifier (pointer_declarator "*puVar60" * identifier) ;) (declaration "int *piVar61;" primitive_type (pointer_declarator "*piVar61" * identifier) ;) (declaration "int *piVar62;" primitive_type (pointer_declarator "*piVar62" * identifier) ;) (declaration "uint uVar63;" type_identifier identifier ;) (declaration "Incremental_inputs *pIVar64;" type_identifier (pointer_declarator "*pIVar64" * identifier) ;) (declaration "byte *pbVar65;" type_identifier (pointer_declarator "*pbVar65" * identifier) ;) (declaration "_Base_ptr p_Var66;" type_identifier identifier ;) (expression_statement "Shdr_data<64> *pSVar67;" (update_expression "Shdr_data<64> *pSVar67" (binary_expression "Shdr_data<64> *pSVar67" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*pSVar67" * identifier)) --) ;) (declaration "pointer ppRVar68;" type_identifier identifier ;) (declaration "uint uVar69;" type_identifier identifier ;) (declaration "byte *pbVar70;" type_identifier (pointer_declarator "*pbVar70" * identifier) ;) (declaration "byte *pbVar71;" type_identifier (pointer_declarator "*pbVar71" * identifier) ;) (declaration "byte *pbVar72;" type_identifier (pointer_declarator "*pbVar72" * identifier) ;) (declaration "_Base_ptr p_Var73;" type_identifier identifier ;) (declaration "pointer pDVar74;" type_identifier identifier ;) (declaration "bool bVar75;" primitive_type identifier ;) (declaration "bool bVar76;" primitive_type identifier ;) (declaration "byte bVar77;" type_identifier identifier ;) (declaration "undefined1 auStack_1f0 [52];" type_identifier (array_declarator "auStack_1f0 [52]" identifier [ number_literal ]) ;) (declaration "Symbols_data *in_stack_fffffe48;" type_identifier (pointer_declarator "*in_stack_fffffe48" * identifier) ;) (declaration "Object *in_stack_fffffe54;" type_identifier (pointer_declarator "*in_stack_fffffe54" * identifier) ;) (declaration "Symbols_data *local_190;" type_identifier (pointer_declarator "*local_190" * identifier) ;) (declaration "section_size_type local_188;" type_identifier identifier ;) (declaration "File_view *local_180;" type_identifier (pointer_declarator "*local_180" * identifier) ;) (declaration "section_size_type local_17c;" type_identifier identifier ;) (declaration "_Base_ptr local_174;" type_identifier identifier ;) (declaration "uint local_170;" type_identifier identifier ;) (declaration "uint local_16c;" type_identifier identifier ;) (declaration "uint local_168;" type_identifier identifier ;) (declaration "File_view *local_164;" type_identifier (pointer_declarator "*local_164" * identifier) ;) (declaration "uchar *local_160;" type_identifier (pointer_declarator "*local_160" * identifier) ;) (declaration "undefined4 local_154;" type_identifier identifier ;) (declaration "undefined4 local_150;" type_identifier identifier ;) (declaration "uint local_148;" type_identifier identifier ;) (declaration "uchar *local_144;" type_identifier (pointer_declarator "*local_144" * identifier) ;) (declaration "uint local_140;" type_identifier identifier ;) (declaration "bool local_137;" primitive_type identifier ;) (expression_statement "Shdr_data<64> *local_134;" (update_expression "Shdr_data<64> *local_134" (binary_expression "Shdr_data<64> *local_134" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*local_134" * identifier)) --) ;) (declaration "uint *local_12c;" type_identifier (pointer_declarator "*local_12c" * identifier) ;) (expression_statement "Sized_relobj_file<64,_false> *local_124;" (update_expression "Sized_relobj_file<64,_false> *local_124" (binary_expression "Sized_relobj_file<64,_false> *local_124" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*local_124" * identifier)) --) ;) (declaration "undefined **local_120;" type_identifier (pointer_declarator "**local_120" * (pointer_declarator "*local_120" * identifier)) ;) (declaration "int *local_11c;" primitive_type (pointer_declarator "*local_11c" * identifier) ;) (declaration "undefined4 local_118;" type_identifier identifier ;) (declaration "int local_110;" primitive_type identifier ;) (declaration "char local_10c [4];" primitive_type (array_declarator "local_10c [4]" identifier [ number_literal ]) ;) (declaration "undefined4 local_108;" type_identifier identifier ;) (declaration "_Base_ptr local_100 [3];" type_identifier (array_declarator "local_100 [3]" identifier [ number_literal ]) ;) (declaration "undefined1 local_f1;" type_identifier identifier ;) (declaration "uint i;" type_identifier identifier ;) (declaration "Shdr shdr;" type_identifier identifier ;) (declaration "off_t *local_e8;" type_identifier (pointer_declarator "*local_e8" * identifier) ;) (declaration "_Base_ptr local_e4;" type_identifier identifier ;) (ERROR "vector<unsigned_int," (binary_expression "vector<unsigned_int" identifier < identifier) ,) (labeled_statement "_std::allocator<unsigned_int>_> reloc_sections;" statement_identifier : (ERROR ":" :) (expression_statement "allocator<unsigned_int>_> reloc_sections;" (binary_expression "allocator<unsigned_int>_> reloc_sections" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > identifier) ;)) (ERROR "vector<unsigned_int," (binary_expression "vector<unsigned_int" identifier < identifier) ,) (labeled_statement "_std::allocator<unsigned_int>_> eh_frame_sections;" statement_identifier : (ERROR ":" :) (expression_statement "allocator<unsigned_int>_> eh_frame_sections;" (binary_expression "allocator<unsigned_int>_> eh_frame_sections" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > identifier) ;)) (ERROR "vector<unsigned_int," (binary_expression "vector<unsigned_int" identifier < identifier) ,) (labeled_statement "_std::allocator<unsigned_int>_> debug_info_sections;" statement_identifier : (ERROR ":" :) (expression_statement "allocator<unsigned_int>_> debug_info_sections;" (binary_expression "allocator<unsigned_int>_> debug_info_sections" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > identifier) ;)) (ERROR "vector<unsigned_int," (binary_expression "vector<unsigned_int" identifier < identifier) ,) (labeled_statement "_std::allocator<unsigned_int>_> debug_types_sections;" statement_identifier : (ERROR ":" :) (expression_statement "allocator<unsigned_int>_> debug_types_sections;" (binary_expression "allocator<unsigned_int>_> debug_types_sections" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > identifier) ;)) (ERROR "vector<bool," (binary_expression "vector<bool" identifier < identifier) ,) (labeled_statement "_std::allocator<bool>_> omit;" statement_identifier : (ERROR ":" :) (expression_statement "allocator<bool>_> omit;" (binary_expression "allocator<bool>_> omit" (binary_expression "allocator<bool>_" (binary_expression "allocator<bool" identifier < identifier) > identifier) > identifier) ;)) (declaration "Shdr shdr_2;" type_identifier identifier ;) (declaration "undefined1 local_94 [16];" type_identifier (array_declarator "local_94 [16]" identifier [ number_literal ]) ;) (declaration "off_t offset;" type_identifier identifier ;) (declaration "undefined4 local_6c;" type_identifier identifier ;) (declaration "undefined4 local_68;" type_identifier identifier ;) (declaration "undefined4 local_64;" type_identifier identifier ;) (declaration "Input_file *local_60;" type_identifier (pointer_declarator "*local_60" * identifier) ;) (expression_statement "Sized_relobj_file<64,_false> *local_5c;" (update_expression "Sized_relobj_file<64,_false> *local_5c" (binary_expression "Sized_relobj_file<64,_false> *local_5c" (binary_expression "Sized_relobj_file<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*local_5c" * identifier)) --) ;) (declaration "undefined4 local_58;" type_identifier identifier ;) (declaration "uint local_54;" type_identifier identifier ;) (declaration "undefined4 local_50;" type_identifier identifier ;) (declaration "Xindex *local_4c;" type_identifier (pointer_declarator "*local_4c" * identifier) ;) (declaration "Compressed_section_map *local_48;" type_identifier (pointer_declarator "*local_48" * identifier) ;) (declaration "pointer local_44;" type_identifier identifier ;) (declaration "pointer local_40;" type_identifier identifier ;) (declaration "pointer local_3c;" type_identifier identifier ;) (ERROR "vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *local_38" (binary_expression "vector<gold" identifier < identifier) : : (binary_expression "Relocatable_relocs*,_std" identifier * (ERROR "," ,) identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Relocatable_relocs*>_> *local_38" (binary_expression "Relocatable_relocs*>_" identifier * (ERROR ">" >) identifier) > (pointer_expression "*local_38" * identifier))) (expression_statement ";" ;) (declaration "Object_merge_map *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (declaration "Read_relocs_data *local_2c;" type_identifier (pointer_declarator "*local_2c" * identifier) ;) (declaration "Symbols_data *local_28;" type_identifier (pointer_declarator "*local_28" * identifier) ;) (declaration "uint *local_24;" type_identifier (pointer_declarator "*local_24" * identifier) ;) (expression_statement "bVar77 = 0;" (assignment_expression "bVar77 = 0" identifier = number_literal) ;) (if_statement "if (parameters->target_ == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    do_gold_unreachable("../../gold/parameters.h",0x69,"target");\n  }" if (parenthesized_expression "(parameters->target_ == (Target *)0x0)" ( (binary_expression "parameters->target_ == (Target *)0x0" (field_expression "parameters->target_" identifier -> field_identifier) == (cast_expression "(Target *)0x0" ( (type_descriptor "Target *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    do_gold_unreachable("../../gold/parameters.h",0x69,"target");\n  }" { comment (expression_statement "do_gold_unreachable("../../gold/parameters.h",0x69,"target");" (call_expression "do_gold_unreachable("../../gold/parameters.h",0x69,"target")" identifier (argument_list "("../../gold/parameters.h",0x69,"target")" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""target"" " string_content ") ))) ;) })) (expression_statement "pGVar34 = parameters->options_;" (assignment_expression "pGVar34 = parameters->options_" identifier = (field_expression "parameters->options_" identifier -> field_identifier)) ;) (expression_statement "pSVar5 = *(Sized_relobj_file<64,_false> **)(*(int *)(parameters->target_ + 4) + 0x60);" (assignment_expression "pSVar5 = *(Sized_relobj_file<64,_false> **)(*(int *)(parameters->target_ + 4) + 0x60)" identifier = (pointer_expression "*(Sized_relobj_file<64,_false> **)(*(int *)(parameters->target_ + 4) + 0x60)" * (call_expression "(Sized_relobj_file<64,_false> **)(*(int *)(parameters->target_ + 4) + 0x60)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "(*(int *)(parameters->target_ + 4) + 0x60)" ( (binary_expression "*(int *)(parameters->target_ + 4) + 0x60" (pointer_expression "*(int *)(parameters->target_ + 4)" * (cast_expression "(int *)(parameters->target_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(parameters->target_ + 4)" ( (binary_expression "parameters->target_ + 4" (field_expression "parameters->target_" identifier -> field_identifier) + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar6 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;" (assignment_expression "uVar6 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_" identifier = (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) ;) (if_statement "if (pGVar34 == (General_options *)0x0) goto LAB_000a34ee;" if (parenthesized_expression "(pGVar34 == (General_options *)0x0)" ( (binary_expression "pGVar34 == (General_options *)0x0" identifier == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000a34ee;" goto statement_identifier ;)) (if_statement "if ((pGVar34->gc_sections_).value == false) {\n    if (pGVar34->icf_status_ == ICF_NONE) {\n      if (layout->unique_segment_for_sections_specified_ == false) {\n        if (uVar6 == 0) {\n          return;\n        }\n        local_148 = sd->section_names_size;\n        local_160 = sd->section_headers->data_;\n        local_164 = sd->symbols;\n        if (local_164 != (File_view *)0x0) {\n          local_164 = (File_view *)local_164->data_;\n        }\n        local_17c = sd->symbols_size;\n        local_180 = sd->symbol_names;\n        if (local_180 != (File_view *)0x0) {\n          local_180 = (File_view *)local_180->data_;\n        }\n        bVar25 = false;\n        bVar24 = false;\n        local_190 = (Symbols_data *)0x0;\n        local_188 = sd->symbol_names_size;\n        local_144 = sd->section_names->data_;\n        bVar26 = false;\n        goto LAB_000a1e71;\n      }\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a1e0a;\n    }\n    else {\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (sd == (Read_symbols_data *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x597,"do_layout");\n    }\n    if (uVar6 == 0) {\n      return;\n    }\n    local_190 = (Symbols_data *)operator_new(0x20);\n    in_stack_fffffe48 = local_190;\n    Relobj::copy_symbols_data((Relobj *)this,local_190,sd,uVar6 << 6);\n    local_160 = local_190->section_headers_data;\n    (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = local_190;\n    local_148 = local_190->section_names_size;\n    local_164 = (File_view *)local_190->symbols_data;\n    local_17c = local_190->symbols_size;\n    local_180 = (File_view *)local_190->symbol_names_data;\n    pGVar34 = parameters->options_;\n    local_188 = local_190->symbol_names_size;\n    local_144 = local_190->section_names_data;\n    if (pGVar34 == (General_options *)0x0) {\nLAB_000a34ee:\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }\n    bVar25 = true;\n    bVar24 = false;\n    bVar26 = true;\n  }\n  else {\n    local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n    if (local_190 == (Symbols_data *)0x0) goto LAB_000a3448;\n    if (symtab->gc_->is_worklist_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout");\n    }\n    if (pGVar34->icf_status_ != ICF_NONE) {\nLAB_000a33a4:\n      if (symtab->icf_->icf_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");\n      }\n    }\nLAB_000a1e0a:\n    if (uVar6 == 0) {\n      return;\n    }\n    bVar25 = true;\n    bVar24 = true;\n    local_160 = local_190->section_headers_data;\n    local_148 = local_190->section_names_size;\n    bVar26 = false;\n    local_164 = (File_view *)local_190->symbols_data;\n    local_17c = local_190->symbols_size;\n    local_180 = (File_view *)local_190->symbol_names_data;\n    local_188 = local_190->symbol_names_size;\n    local_144 = local_190->section_names_data;\n  }" if (parenthesized_expression "((pGVar34->gc_sections_).value == false)" ( (binary_expression "(pGVar34->gc_sections_).value == false" (field_expression "(pGVar34->gc_sections_).value" (parenthesized_expression "(pGVar34->gc_sections_)" ( (field_expression "pGVar34->gc_sections_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n    if (pGVar34->icf_status_ == ICF_NONE) {\n      if (layout->unique_segment_for_sections_specified_ == false) {\n        if (uVar6 == 0) {\n          return;\n        }\n        local_148 = sd->section_names_size;\n        local_160 = sd->section_headers->data_;\n        local_164 = sd->symbols;\n        if (local_164 != (File_view *)0x0) {\n          local_164 = (File_view *)local_164->data_;\n        }\n        local_17c = sd->symbols_size;\n        local_180 = sd->symbol_names;\n        if (local_180 != (File_view *)0x0) {\n          local_180 = (File_view *)local_180->data_;\n        }\n        bVar25 = false;\n        bVar24 = false;\n        local_190 = (Symbols_data *)0x0;\n        local_188 = sd->symbol_names_size;\n        local_144 = sd->section_names->data_;\n        bVar26 = false;\n        goto LAB_000a1e71;\n      }\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a1e0a;\n    }\n    else {\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (sd == (Read_symbols_data *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x597,"do_layout");\n    }\n    if (uVar6 == 0) {\n      return;\n    }\n    local_190 = (Symbols_data *)operator_new(0x20);\n    in_stack_fffffe48 = local_190;\n    Relobj::copy_symbols_data((Relobj *)this,local_190,sd,uVar6 << 6);\n    local_160 = local_190->section_headers_data;\n    (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = local_190;\n    local_148 = local_190->section_names_size;\n    local_164 = (File_view *)local_190->symbols_data;\n    local_17c = local_190->symbols_size;\n    local_180 = (File_view *)local_190->symbol_names_data;\n    pGVar34 = parameters->options_;\n    local_188 = local_190->symbol_names_size;\n    local_144 = local_190->section_names_data;\n    if (pGVar34 == (General_options *)0x0) {\nLAB_000a34ee:\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }\n    bVar25 = true;\n    bVar24 = false;\n    bVar26 = true;\n  }" { (if_statement "if (pGVar34->icf_status_ == ICF_NONE) {\n      if (layout->unique_segment_for_sections_specified_ == false) {\n        if (uVar6 == 0) {\n          return;\n        }\n        local_148 = sd->section_names_size;\n        local_160 = sd->section_headers->data_;\n        local_164 = sd->symbols;\n        if (local_164 != (File_view *)0x0) {\n          local_164 = (File_view *)local_164->data_;\n        }\n        local_17c = sd->symbols_size;\n        local_180 = sd->symbol_names;\n        if (local_180 != (File_view *)0x0) {\n          local_180 = (File_view *)local_180->data_;\n        }\n        bVar25 = false;\n        bVar24 = false;\n        local_190 = (Symbols_data *)0x0;\n        local_188 = sd->symbol_names_size;\n        local_144 = sd->section_names->data_;\n        bVar26 = false;\n        goto LAB_000a1e71;\n      }\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a1e0a;\n    }\n    else {\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a33a4;\n    }" if (parenthesized_expression "(pGVar34->icf_status_ == ICF_NONE)" ( (binary_expression "pGVar34->icf_status_ == ICF_NONE" (field_expression "pGVar34->icf_status_" identifier -> field_identifier) == identifier) )) (compound_statement "{\n      if (layout->unique_segment_for_sections_specified_ == false) {\n        if (uVar6 == 0) {\n          return;\n        }\n        local_148 = sd->section_names_size;\n        local_160 = sd->section_headers->data_;\n        local_164 = sd->symbols;\n        if (local_164 != (File_view *)0x0) {\n          local_164 = (File_view *)local_164->data_;\n        }\n        local_17c = sd->symbols_size;\n        local_180 = sd->symbol_names;\n        if (local_180 != (File_view *)0x0) {\n          local_180 = (File_view *)local_180->data_;\n        }\n        bVar25 = false;\n        bVar24 = false;\n        local_190 = (Symbols_data *)0x0;\n        local_188 = sd->symbol_names_size;\n        local_144 = sd->section_names->data_;\n        bVar26 = false;\n        goto LAB_000a1e71;\n      }\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a1e0a;\n    }" { (if_statement "if (layout->unique_segment_for_sections_specified_ == false) {\n        if (uVar6 == 0) {\n          return;\n        }\n        local_148 = sd->section_names_size;\n        local_160 = sd->section_headers->data_;\n        local_164 = sd->symbols;\n        if (local_164 != (File_view *)0x0) {\n          local_164 = (File_view *)local_164->data_;\n        }\n        local_17c = sd->symbols_size;\n        local_180 = sd->symbol_names;\n        if (local_180 != (File_view *)0x0) {\n          local_180 = (File_view *)local_180->data_;\n        }\n        bVar25 = false;\n        bVar24 = false;\n        local_190 = (Symbols_data *)0x0;\n        local_188 = sd->symbol_names_size;\n        local_144 = sd->section_names->data_;\n        bVar26 = false;\n        goto LAB_000a1e71;\n      }" if (parenthesized_expression "(layout->unique_segment_for_sections_specified_ == false)" ( (binary_expression "layout->unique_segment_for_sections_specified_ == false" (field_expression "layout->unique_segment_for_sections_specified_" identifier -> field_identifier) == false) )) (compound_statement "{\n        if (uVar6 == 0) {\n          return;\n        }\n        local_148 = sd->section_names_size;\n        local_160 = sd->section_headers->data_;\n        local_164 = sd->symbols;\n        if (local_164 != (File_view *)0x0) {\n          local_164 = (File_view *)local_164->data_;\n        }\n        local_17c = sd->symbols_size;\n        local_180 = sd->symbol_names;\n        if (local_180 != (File_view *)0x0) {\n          local_180 = (File_view *)local_180->data_;\n        }\n        bVar25 = false;\n        bVar24 = false;\n        local_190 = (Symbols_data *)0x0;\n        local_188 = sd->symbol_names_size;\n        local_144 = sd->section_names->data_;\n        bVar26 = false;\n        goto LAB_000a1e71;\n      }" { (if_statement "if (uVar6 == 0) {\n          return;\n        }" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (expression_statement "local_148 = sd->section_names_size;" (assignment_expression "local_148 = sd->section_names_size" identifier = (field_expression "sd->section_names_size" identifier -> field_identifier)) ;) (expression_statement "local_160 = sd->section_headers->data_;" (assignment_expression "local_160 = sd->section_headers->data_" identifier = (field_expression "sd->section_headers->data_" (field_expression "sd->section_headers" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "local_164 = sd->symbols;" (assignment_expression "local_164 = sd->symbols" identifier = (field_expression "sd->symbols" identifier -> field_identifier)) ;) (if_statement "if (local_164 != (File_view *)0x0) {\n          local_164 = (File_view *)local_164->data_;\n        }" if (parenthesized_expression "(local_164 != (File_view *)0x0)" ( (binary_expression "local_164 != (File_view *)0x0" identifier != (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          local_164 = (File_view *)local_164->data_;\n        }" { (expression_statement "local_164 = (File_view *)local_164->data_;" (assignment_expression "local_164 = (File_view *)local_164->data_" identifier = (cast_expression "(File_view *)local_164->data_" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_164->data_" identifier -> field_identifier))) ;) })) (expression_statement "local_17c = sd->symbols_size;" (assignment_expression "local_17c = sd->symbols_size" identifier = (field_expression "sd->symbols_size" identifier -> field_identifier)) ;) (expression_statement "local_180 = sd->symbol_names;" (assignment_expression "local_180 = sd->symbol_names" identifier = (field_expression "sd->symbol_names" identifier -> field_identifier)) ;) (if_statement "if (local_180 != (File_view *)0x0) {\n          local_180 = (File_view *)local_180->data_;\n        }" if (parenthesized_expression "(local_180 != (File_view *)0x0)" ( (binary_expression "local_180 != (File_view *)0x0" identifier != (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          local_180 = (File_view *)local_180->data_;\n        }" { (expression_statement "local_180 = (File_view *)local_180->data_;" (assignment_expression "local_180 = (File_view *)local_180->data_" identifier = (cast_expression "(File_view *)local_180->data_" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_180->data_" identifier -> field_identifier))) ;) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (expression_statement "local_190 = (Symbols_data *)0x0;" (assignment_expression "local_190 = (Symbols_data *)0x0" identifier = (cast_expression "(Symbols_data *)0x0" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_188 = sd->symbol_names_size;" (assignment_expression "local_188 = sd->symbol_names_size" identifier = (field_expression "sd->symbol_names_size" identifier -> field_identifier)) ;) (expression_statement "local_144 = sd->section_names->data_;" (assignment_expression "local_144 = sd->section_names->data_" identifier = (field_expression "sd->section_names->data_" (field_expression "sd->section_names" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (goto_statement "goto LAB_000a1e71;" goto statement_identifier ;) })) (expression_statement "local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;" (assignment_expression "local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_" identifier = (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.sd_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier)) ;) (if_statement "if (local_190 != (Symbols_data *)0x0) goto LAB_000a1e0a;" if (parenthesized_expression "(local_190 != (Symbols_data *)0x0)" ( (binary_expression "local_190 != (Symbols_data *)0x0" identifier != (cast_expression "(Symbols_data *)0x0" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000a1e0a;" goto statement_identifier ;)) }) (else_clause "else {\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a33a4;\n    }" else (compound_statement "{\n      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n      if (local_190 != (Symbols_data *)0x0) goto LAB_000a33a4;\n    }" { (expression_statement "local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;" (assignment_expression "local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_" identifier = (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.sd_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier)) ;) (if_statement "if (local_190 != (Symbols_data *)0x0) goto LAB_000a33a4;" if (parenthesized_expression "(local_190 != (Symbols_data *)0x0)" ( (binary_expression "local_190 != (Symbols_data *)0x0" identifier != (cast_expression "(Symbols_data *)0x0" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000a33a4;" goto statement_identifier ;)) }))) (labeled_statement "LAB_000a3448:\n    if (sd == (Read_symbols_data *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x597,"do_layout");\n    }" statement_identifier : (if_statement "if (sd == (Read_symbols_data *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x597,"do_layout");\n    }" if (parenthesized_expression "(sd == (Read_symbols_data *)0x0)" ( (binary_expression "sd == (Read_symbols_data *)0x0" identifier == (cast_expression "(Read_symbols_data *)0x0" ( (type_descriptor "Read_symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x597,"do_layout");\n    }" { comment (expression_statement "do_gold_unreachable("../../gold/object.cc",0x597,"do_layout");" (call_expression "do_gold_unreachable("../../gold/object.cc",0x597,"do_layout")" identifier (argument_list "("../../gold/object.cc",0x597,"do_layout")" ( (string_literal ""../../gold/object.cc"" " string_content ") , number_literal , (string_literal ""do_layout"" " string_content ") ))) ;) }))) (if_statement "if (uVar6 == 0) {\n      return;\n    }" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "local_190 = (Symbols_data *)operator_new(0x20);" (assignment_expression "local_190 = (Symbols_data *)operator_new(0x20)" identifier = (cast_expression "(Symbols_data *)operator_new(0x20)" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(0x20)" identifier (argument_list "(0x20)" ( number_literal ))))) ;) (expression_statement "in_stack_fffffe48 = local_190;" (assignment_expression "in_stack_fffffe48 = local_190" identifier = identifier) ;) (labeled_statement "Relobj::copy_symbols_data((Relobj *)this,local_190,sd,uVar6 << 6);" statement_identifier : (ERROR ":" :) (expression_statement "copy_symbols_data((Relobj *)this,local_190,sd,uVar6 << 6);" (call_expression "copy_symbols_data((Relobj *)this,local_190,sd,uVar6 << 6)" identifier (argument_list "((Relobj *)this,local_190,sd,uVar6 << 6)" ( (cast_expression "(Relobj *)this" ( (type_descriptor "Relobj *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier , (binary_expression "uVar6 << 6" identifier << number_literal) ))) ;)) (expression_statement "local_160 = local_190->section_headers_data;" (assignment_expression "local_160 = local_190->section_headers_data" identifier = (field_expression "local_190->section_headers_data" identifier -> field_identifier)) ;) (expression_statement "(this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = local_190;" (assignment_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = local_190" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.sd_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) = identifier) ;) (expression_statement "local_148 = local_190->section_names_size;" (assignment_expression "local_148 = local_190->section_names_size" identifier = (field_expression "local_190->section_names_size" identifier -> field_identifier)) ;) (expression_statement "local_164 = (File_view *)local_190->symbols_data;" (assignment_expression "local_164 = (File_view *)local_190->symbols_data" identifier = (cast_expression "(File_view *)local_190->symbols_data" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_190->symbols_data" identifier -> field_identifier))) ;) (expression_statement "local_17c = local_190->symbols_size;" (assignment_expression "local_17c = local_190->symbols_size" identifier = (field_expression "local_190->symbols_size" identifier -> field_identifier)) ;) (expression_statement "local_180 = (File_view *)local_190->symbol_names_data;" (assignment_expression "local_180 = (File_view *)local_190->symbol_names_data" identifier = (cast_expression "(File_view *)local_190->symbol_names_data" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_190->symbol_names_data" identifier -> field_identifier))) ;) (expression_statement "pGVar34 = parameters->options_;" (assignment_expression "pGVar34 = parameters->options_" identifier = (field_expression "parameters->options_" identifier -> field_identifier)) ;) (expression_statement "local_188 = local_190->symbol_names_size;" (assignment_expression "local_188 = local_190->symbol_names_size" identifier = (field_expression "local_190->symbol_names_size" identifier -> field_identifier)) ;) (expression_statement "local_144 = local_190->section_names_data;" (assignment_expression "local_144 = local_190->section_names_data" identifier = (field_expression "local_190->section_names_data" identifier -> field_identifier)) ;) (if_statement "if (pGVar34 == (General_options *)0x0) {\nLAB_000a34ee:\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }" if (parenthesized_expression "(pGVar34 == (General_options *)0x0)" ( (binary_expression "pGVar34 == (General_options *)0x0" identifier == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000a34ee:\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }" { (labeled_statement "LAB_000a34ee:\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");" statement_identifier : comment (expression_statement "do_gold_unreachable("../../gold/parameters.h",0x5c,"options");" (call_expression "do_gold_unreachable("../../gold/parameters.h",0x5c,"options")" identifier (argument_list "("../../gold/parameters.h",0x5c,"options")" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""options"" " string_content ") ))) ;)) })) (expression_statement "bVar25 = true;" (assignment_expression "bVar25 = true" identifier = true) ;) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (expression_statement "bVar26 = true;" (assignment_expression "bVar26 = true" identifier = true) ;) }) (else_clause "else {\n    local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n    if (local_190 == (Symbols_data *)0x0) goto LAB_000a3448;\n    if (symtab->gc_->is_worklist_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout");\n    }\n    if (pGVar34->icf_status_ != ICF_NONE) {\nLAB_000a33a4:\n      if (symtab->icf_->icf_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");\n      }\n    }\nLAB_000a1e0a:\n    if (uVar6 == 0) {\n      return;\n    }\n    bVar25 = true;\n    bVar24 = true;\n    local_160 = local_190->section_headers_data;\n    local_148 = local_190->section_names_size;\n    bVar26 = false;\n    local_164 = (File_view *)local_190->symbols_data;\n    local_17c = local_190->symbols_size;\n    local_180 = (File_view *)local_190->symbol_names_data;\n    local_188 = local_190->symbol_names_size;\n    local_144 = local_190->section_names_data;\n  }" else (compound_statement "{\n    local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;\n    if (local_190 == (Symbols_data *)0x0) goto LAB_000a3448;\n    if (symtab->gc_->is_worklist_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout");\n    }\n    if (pGVar34->icf_status_ != ICF_NONE) {\nLAB_000a33a4:\n      if (symtab->icf_->icf_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");\n      }\n    }\nLAB_000a1e0a:\n    if (uVar6 == 0) {\n      return;\n    }\n    bVar25 = true;\n    bVar24 = true;\n    local_160 = local_190->section_headers_data;\n    local_148 = local_190->section_names_size;\n    bVar26 = false;\n    local_164 = (File_view *)local_190->symbols_data;\n    local_17c = local_190->symbols_size;\n    local_180 = (File_view *)local_190->symbol_names_data;\n    local_188 = local_190->symbol_names_size;\n    local_144 = local_190->section_names_data;\n  }" { (expression_statement "local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;" (assignment_expression "local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_" identifier = (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.sd_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier)) ;) (if_statement "if (local_190 == (Symbols_data *)0x0) goto LAB_000a3448;" if (parenthesized_expression "(local_190 == (Symbols_data *)0x0)" ( (binary_expression "local_190 == (Symbols_data *)0x0" identifier == (cast_expression "(Symbols_data *)0x0" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000a3448;" goto statement_identifier ;)) (if_statement "if (symtab->gc_->is_worklist_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout");\n    }" if (parenthesized_expression "(symtab->gc_->is_worklist_ready_ == false)" ( (binary_expression "symtab->gc_->is_worklist_ready_ == false" (field_expression "symtab->gc_->is_worklist_ready_" (field_expression "symtab->gc_" identifier -> field_identifier) -> field_identifier) == false) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout");\n    }" { comment (expression_statement "do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout");" (call_expression "do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout")" identifier (argument_list "("../../gold/object.cc",0x59d,"do_layout")" ( (string_literal ""../../gold/object.cc"" " string_content ") , number_literal , (string_literal ""do_layout"" " string_content ") ))) ;) })) (if_statement "if (pGVar34->icf_status_ != ICF_NONE) {\nLAB_000a33a4:\n      if (symtab->icf_->icf_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");\n      }\n    }" if (parenthesized_expression "(pGVar34->icf_status_ != ICF_NONE)" ( (binary_expression "pGVar34->icf_status_ != ICF_NONE" (field_expression "pGVar34->icf_status_" identifier -> field_identifier) != identifier) )) (compound_statement "{\nLAB_000a33a4:\n      if (symtab->icf_->icf_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");\n      }\n    }" { (labeled_statement "LAB_000a33a4:\n      if (symtab->icf_->icf_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");\n      }" statement_identifier : (if_statement "if (symtab->icf_->icf_ready_ == false) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");\n      }" if (parenthesized_expression "(symtab->icf_->icf_ready_ == false)" ( (binary_expression "symtab->icf_->icf_ready_ == false" (field_expression "symtab->icf_->icf_ready_" (field_expression "symtab->icf_" identifier -> field_identifier) -> field_identifier) == false) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");\n      }" { comment (expression_statement "do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");" (call_expression "do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout")" identifier (argument_list "("../../gold/object.cc",0x59f,"do_layout")" ( (string_literal ""../../gold/object.cc"" " string_content ") , number_literal , (string_literal ""do_layout"" " string_content ") ))) ;) }))) })) (labeled_statement "LAB_000a1e0a:\n    if (uVar6 == 0) {\n      return;\n    }" statement_identifier : (if_statement "if (uVar6 == 0) {\n      return;\n    }" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) }))) (expression_statement "bVar25 = true;" (assignment_expression "bVar25 = true" identifier = true) ;) (expression_statement "bVar24 = true;" (assignment_expression "bVar24 = true" identifier = true) ;) (expression_statement "local_160 = local_190->section_headers_data;" (assignment_expression "local_160 = local_190->section_headers_data" identifier = (field_expression "local_190->section_headers_data" identifier -> field_identifier)) ;) (expression_statement "local_148 = local_190->section_names_size;" (assignment_expression "local_148 = local_190->section_names_size" identifier = (field_expression "local_190->section_names_size" identifier -> field_identifier)) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "local_164 = (File_view *)local_190->symbols_data;" (assignment_expression "local_164 = (File_view *)local_190->symbols_data" identifier = (cast_expression "(File_view *)local_190->symbols_data" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_190->symbols_data" identifier -> field_identifier))) ;) (expression_statement "local_17c = local_190->symbols_size;" (assignment_expression "local_17c = local_190->symbols_size" identifier = (field_expression "local_190->symbols_size" identifier -> field_identifier)) ;) (expression_statement "local_180 = (File_view *)local_190->symbol_names_data;" (assignment_expression "local_180 = (File_view *)local_190->symbol_names_data" identifier = (cast_expression "(File_view *)local_190->symbol_names_data" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_190->symbol_names_data" identifier -> field_identifier))) ;) (expression_statement "local_188 = local_190->symbol_names_size;" (assignment_expression "local_188 = local_190->symbol_names_size" identifier = (field_expression "local_190->symbol_names_size" identifier -> field_identifier)) ;) (expression_statement "local_144 = local_190->section_names_data;" (assignment_expression "local_144 = local_190->section_names_data" identifier = (field_expression "local_190->section_names_data" identifier -> field_identifier)) ;) }))) (labeled_statement "LAB_000a1e71:\n  local_120 = &_GLOBAL_OFFSET_TABLE_;" statement_identifier : (expression_statement "local_120 = &_GLOBAL_OFFSET_TABLE_;" (assignment_expression "local_120 = &_GLOBAL_OFFSET_TABLE_" identifier = (pointer_expression "&_GLOBAL_OFFSET_TABLE_" & identifier)) ;)) (expression_statement "pPVar7 = pGVar34->plugins_;" (assignment_expression "pPVar7 = pGVar34->plugins_" identifier = (field_expression "pGVar34->plugins_" identifier -> field_identifier)) ;) (expression_statement "bVar3 = 0;" (assignment_expression "bVar3 = 0" identifier = number_literal) ;) (if_statement "if ((pPVar7 != (Plugin_manager *)0x0) && (bVar3 = pPVar7->any_claimed_, (bool)bVar3 != false)) {\n    bVar3 = pPVar7->in_replacement_phase_ ^ 1;\n  }" if (parenthesized_expression "((pPVar7 != (Plugin_manager *)0x0) && (bVar3 = pPVar7->any_claimed_, (bool)bVar3 != false))" ( (binary_expression "(pPVar7 != (Plugin_manager *)0x0) && (bVar3 = pPVar7->any_claimed_, (bool)bVar3 != false)" (parenthesized_expression "(pPVar7 != (Plugin_manager *)0x0)" ( (binary_expression "pPVar7 != (Plugin_manager *)0x0" identifier != (cast_expression "(Plugin_manager *)0x0" ( (type_descriptor "Plugin_manager *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(bVar3 = pPVar7->any_claimed_, (bool)bVar3 != false)" ( (comma_expression "bVar3 = pPVar7->any_claimed_, (bool)bVar3 != false" (assignment_expression "bVar3 = pPVar7->any_claimed_" identifier = (field_expression "pPVar7->any_claimed_" identifier -> field_identifier)) , (binary_expression "(bool)bVar3 != false" (cast_expression "(bool)bVar3" ( (type_descriptor "bool" primitive_type) ) identifier) != false)) ))) )) (compound_statement "{\n    bVar3 = pPVar7->in_replacement_phase_ ^ 1;\n  }" { (expression_statement "bVar3 = pPVar7->in_replacement_phase_ ^ 1;" (assignment_expression "bVar3 = pPVar7->in_replacement_phase_ ^ 1" identifier = (binary_expression "pPVar7->in_replacement_phase_ ^ 1" (field_expression "pPVar7->in_replacement_phase_" identifier -> field_identifier) ^ number_literal)) ;) })) (if_statement "if (0x3fffffff < uVar6) {\n                    /* WARNING: Subroutine does not return */\n    std::__throw_bad_alloc();\n  }" if (parenthesized_expression "(0x3fffffff < uVar6)" ( (binary_expression "0x3fffffff < uVar6" number_literal < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    std::__throw_bad_alloc();\n  }" { comment (labeled_statement "std::__throw_bad_alloc();" statement_identifier : (ERROR ":" :) (expression_statement "__throw_bad_alloc();" (call_expression "__throw_bad_alloc()" identifier (argument_list "()" ( ))) ;)) })) (expression_statement "puVar30 = (undefined4 *)operator_new(uVar6 * 4);" (assignment_expression "puVar30 = (undefined4 *)operator_new(uVar6 * 4)" identifier = (cast_expression "(undefined4 *)operator_new(uVar6 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(uVar6 * 4)" identifier (argument_list "(uVar6 * 4)" ( (binary_expression "uVar6 * 4" identifier * number_literal) ))))) ;) (expression_statement "puVar32 = puVar30;" (assignment_expression "puVar32 = puVar30" identifier = identifier) ;) (if_statement "if (uVar6 != 0) {\n    do {\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    } while (puVar32 != puVar30 + uVar6);\n  }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n    do {\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    } while (puVar32 != puVar30 + uVar6);\n  }" { (do_statement "do {\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    } while (puVar32 != puVar30 + uVar6);" do (compound_statement "{\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    }" { (expression_statement "*puVar32 = 0;" (assignment_expression "*puVar32 = 0" (pointer_expression "*puVar32" * identifier) = number_literal) ;) (expression_statement "puVar32 = puVar32 + 1;" (assignment_expression "puVar32 = puVar32 + 1" identifier = (binary_expression "puVar32 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar32 != puVar30 + uVar6)" ( (binary_expression "puVar32 != puVar30 + uVar6" identifier != (binary_expression "puVar30 + uVar6" identifier + identifier)) )) ;) })) comment (expression_statement "puVar31 = (undefined4 *)operator_new(uVar6 * 4);" (assignment_expression "puVar31 = (undefined4 *)operator_new(uVar6 * 4)" identifier = (cast_expression "(undefined4 *)operator_new(uVar6 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(uVar6 * 4)" identifier (argument_list "(uVar6 * 4)" ( (binary_expression "uVar6 * 4" identifier * number_literal) ))))) ;) (expression_statement "piVar62 = (int *)&stack0xfffffe54;" (assignment_expression "piVar62 = (int *)&stack0xfffffe54" identifier = (cast_expression "(int *)&stack0xfffffe54" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&stack0xfffffe54" & identifier))) ;) (expression_statement "puVar59 = &stack0xfffffe54;" (assignment_expression "puVar59 = &stack0xfffffe54" identifier = (pointer_expression "&stack0xfffffe54" & identifier)) ;) (expression_statement "local_134 = (Shdr_data<64> *)(local_160 + 0x40);" (assignment_expression "local_134 = (Shdr_data<64> *)(local_160 + 0x40)" identifier = (call_expression "(Shdr_data<64> *)(local_160 + 0x40)" (parenthesized_expression "(Shdr_data<64> *)" ( (binary_expression "Shdr_data<64> *" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*" * identifier)) )) (argument_list "(local_160 + 0x40)" ( (binary_expression "local_160 + 0x40" identifier + number_literal) )))) ;) (expression_statement "puVar32 = puVar31;" (assignment_expression "puVar32 = puVar31" identifier = identifier) ;) (if_statement "if (uVar6 != 0) {\n    do {\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    } while (puVar32 != puVar31 + uVar6);\n    if (uVar6 != 1) {\n      uVar69 = 1;\n      local_140 = 0;\n      pSVar67 = local_134;\n      do {\n        while( true ) {\n          if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }\n          EVar8 = pSVar67->sh_type;\n          if ((EVar8 == 9) || (EVar8 == 4)) break;\nLAB_000a1f88:\n          uVar69 = uVar69 + 1;\n          pSVar67 = pSVar67 + 1;\n          if (uVar69 == uVar6) goto LAB_000a2028;\n        }\n        uVar63 = pSVar67->sh_info;\n        if (0xfeff < uVar63) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);\n          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n        }\n        if ((uVar63 == 0) || (uVar6 <= uVar63)) {\n          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");\n          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);\n          goto LAB_000a1f88;\n        }\n        puVar19 = puVar30 + uVar63;\n        if (*puVar19 == 0) {\n          *puVar19 = uVar69;\n          puVar31[uVar63] = EVar8;\n          goto LAB_000a1f88;\n        }\n        *puVar19 = 0xffffffff;\n        uVar69 = uVar69 + 1;\n        pSVar67 = pSVar67 + 1;\n      } while (uVar69 != uVar6);\n      goto LAB_000a2028;\n    }\n  }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n    do {\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    } while (puVar32 != puVar31 + uVar6);\n    if (uVar6 != 1) {\n      uVar69 = 1;\n      local_140 = 0;\n      pSVar67 = local_134;\n      do {\n        while( true ) {\n          if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }\n          EVar8 = pSVar67->sh_type;\n          if ((EVar8 == 9) || (EVar8 == 4)) break;\nLAB_000a1f88:\n          uVar69 = uVar69 + 1;\n          pSVar67 = pSVar67 + 1;\n          if (uVar69 == uVar6) goto LAB_000a2028;\n        }\n        uVar63 = pSVar67->sh_info;\n        if (0xfeff < uVar63) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);\n          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n        }\n        if ((uVar63 == 0) || (uVar6 <= uVar63)) {\n          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");\n          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);\n          goto LAB_000a1f88;\n        }\n        puVar19 = puVar30 + uVar63;\n        if (*puVar19 == 0) {\n          *puVar19 = uVar69;\n          puVar31[uVar63] = EVar8;\n          goto LAB_000a1f88;\n        }\n        *puVar19 = 0xffffffff;\n        uVar69 = uVar69 + 1;\n        pSVar67 = pSVar67 + 1;\n      } while (uVar69 != uVar6);\n      goto LAB_000a2028;\n    }\n  }" { (do_statement "do {\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    } while (puVar32 != puVar31 + uVar6);" do (compound_statement "{\n      *puVar32 = 0;\n      puVar32 = puVar32 + 1;\n    }" { (expression_statement "*puVar32 = 0;" (assignment_expression "*puVar32 = 0" (pointer_expression "*puVar32" * identifier) = number_literal) ;) (expression_statement "puVar32 = puVar32 + 1;" (assignment_expression "puVar32 = puVar32 + 1" identifier = (binary_expression "puVar32 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar32 != puVar31 + uVar6)" ( (binary_expression "puVar32 != puVar31 + uVar6" identifier != (binary_expression "puVar31 + uVar6" identifier + identifier)) )) ;) (if_statement "if (uVar6 != 1) {\n      uVar69 = 1;\n      local_140 = 0;\n      pSVar67 = local_134;\n      do {\n        while( true ) {\n          if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }\n          EVar8 = pSVar67->sh_type;\n          if ((EVar8 == 9) || (EVar8 == 4)) break;\nLAB_000a1f88:\n          uVar69 = uVar69 + 1;\n          pSVar67 = pSVar67 + 1;\n          if (uVar69 == uVar6) goto LAB_000a2028;\n        }\n        uVar63 = pSVar67->sh_info;\n        if (0xfeff < uVar63) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);\n          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n        }\n        if ((uVar63 == 0) || (uVar6 <= uVar63)) {\n          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");\n          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);\n          goto LAB_000a1f88;\n        }\n        puVar19 = puVar30 + uVar63;\n        if (*puVar19 == 0) {\n          *puVar19 = uVar69;\n          puVar31[uVar63] = EVar8;\n          goto LAB_000a1f88;\n        }\n        *puVar19 = 0xffffffff;\n        uVar69 = uVar69 + 1;\n        pSVar67 = pSVar67 + 1;\n      } while (uVar69 != uVar6);\n      goto LAB_000a2028;\n    }" if (parenthesized_expression "(uVar6 != 1)" ( (binary_expression "uVar6 != 1" identifier != number_literal) )) (compound_statement "{\n      uVar69 = 1;\n      local_140 = 0;\n      pSVar67 = local_134;\n      do {\n        while( true ) {\n          if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }\n          EVar8 = pSVar67->sh_type;\n          if ((EVar8 == 9) || (EVar8 == 4)) break;\nLAB_000a1f88:\n          uVar69 = uVar69 + 1;\n          pSVar67 = pSVar67 + 1;\n          if (uVar69 == uVar6) goto LAB_000a2028;\n        }\n        uVar63 = pSVar67->sh_info;\n        if (0xfeff < uVar63) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);\n          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n        }\n        if ((uVar63 == 0) || (uVar6 <= uVar63)) {\n          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");\n          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);\n          goto LAB_000a1f88;\n        }\n        puVar19 = puVar30 + uVar63;\n        if (*puVar19 == 0) {\n          *puVar19 = uVar69;\n          puVar31[uVar63] = EVar8;\n          goto LAB_000a1f88;\n        }\n        *puVar19 = 0xffffffff;\n        uVar69 = uVar69 + 1;\n        pSVar67 = pSVar67 + 1;\n      } while (uVar69 != uVar6);\n      goto LAB_000a2028;\n    }" { (expression_statement "uVar69 = 1;" (assignment_expression "uVar69 = 1" identifier = number_literal) ;) (expression_statement "local_140 = 0;" (assignment_expression "local_140 = 0" identifier = number_literal) ;) (expression_statement "pSVar67 = local_134;" (assignment_expression "pSVar67 = local_134" identifier = identifier) ;) (do_statement "do {\n        while( true ) {\n          if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }\n          EVar8 = pSVar67->sh_type;\n          if ((EVar8 == 9) || (EVar8 == 4)) break;\nLAB_000a1f88:\n          uVar69 = uVar69 + 1;\n          pSVar67 = pSVar67 + 1;\n          if (uVar69 == uVar6) goto LAB_000a2028;\n        }\n        uVar63 = pSVar67->sh_info;\n        if (0xfeff < uVar63) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);\n          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n        }\n        if ((uVar63 == 0) || (uVar6 <= uVar63)) {\n          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");\n          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);\n          goto LAB_000a1f88;\n        }\n        puVar19 = puVar30 + uVar63;\n        if (*puVar19 == 0) {\n          *puVar19 = uVar69;\n          puVar31[uVar63] = EVar8;\n          goto LAB_000a1f88;\n        }\n        *puVar19 = 0xffffffff;\n        uVar69 = uVar69 + 1;\n        pSVar67 = pSVar67 + 1;\n      } while (uVar69 != uVar6);" do (compound_statement "{\n        while( true ) {\n          if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }\n          EVar8 = pSVar67->sh_type;\n          if ((EVar8 == 9) || (EVar8 == 4)) break;\nLAB_000a1f88:\n          uVar69 = uVar69 + 1;\n          pSVar67 = pSVar67 + 1;\n          if (uVar69 == uVar6) goto LAB_000a2028;\n        }\n        uVar63 = pSVar67->sh_info;\n        if (0xfeff < uVar63) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);\n          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n        }\n        if ((uVar63 == 0) || (uVar6 <= uVar63)) {\n          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");\n          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);\n          goto LAB_000a1f88;\n        }\n        puVar19 = puVar30 + uVar63;\n        if (*puVar19 == 0) {\n          *puVar19 = uVar69;\n          puVar31[uVar63] = EVar8;\n          goto LAB_000a1f88;\n        }\n        *puVar19 = 0xffffffff;\n        uVar69 = uVar69 + 1;\n        pSVar67 = pSVar67 + 1;\n      }" { (while_statement "while( true ) {\n          if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }\n          EVar8 = pSVar67->sh_type;\n          if ((EVar8 == 9) || (EVar8 == 4)) break;\nLAB_000a1f88:\n          uVar69 = uVar69 + 1;\n          pSVar67 = pSVar67 + 1;\n          if (uVar69 == uVar6) goto LAB_000a2028;\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }\n          EVar8 = pSVar67->sh_type;\n          if ((EVar8 == 9) || (EVar8 == 4)) break;\nLAB_000a1f88:\n          uVar69 = uVar69 + 1;\n          pSVar67 = pSVar67 + 1;\n          if (uVar69 == uVar6) goto LAB_000a2028;\n        }" { (if_statement "if (bVar3 != 0) {\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }" if (parenthesized_expression "(bVar3 != 0)" ( (binary_expression "bVar3 != 0" identifier != number_literal) )) (compound_statement "{\n            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);\n          }" { (expression_statement "local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);" (assignment_expression "local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0)" identifier = (binary_expression "(local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0)" (parenthesized_expression "(local_140 + 1)" ( (binary_expression "local_140 + 1" identifier + number_literal) )) - (call_expression "(uint)((pSVar67->sh_flags & 2) == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((pSVar67->sh_flags & 2) == 0)" ( (binary_expression "(pSVar67->sh_flags & 2) == 0" (parenthesized_expression "(pSVar67->sh_flags & 2)" ( (binary_expression "pSVar67->sh_flags & 2" (field_expression "pSVar67->sh_flags" identifier -> field_identifier) & number_literal) )) == number_literal) ))))) ;) })) (expression_statement "EVar8 = pSVar67->sh_type;" (assignment_expression "EVar8 = pSVar67->sh_type" identifier = (field_expression "pSVar67->sh_type" identifier -> field_identifier)) ;) (if_statement "if ((EVar8 == 9) || (EVar8 == 4)) break;" if (parenthesized_expression "((EVar8 == 9) || (EVar8 == 4))" ( (binary_expression "(EVar8 == 9) || (EVar8 == 4)" (parenthesized_expression "(EVar8 == 9)" ( (binary_expression "EVar8 == 9" identifier == number_literal) )) || (parenthesized_expression "(EVar8 == 4)" ( (binary_expression "EVar8 == 4" identifier == number_literal) ))) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000a1f88:\n          uVar69 = uVar69 + 1;" statement_identifier : (expression_statement "uVar69 = uVar69 + 1;" (assignment_expression "uVar69 = uVar69 + 1" identifier = (binary_expression "uVar69 + 1" identifier + number_literal)) ;)) (expression_statement "pSVar67 = pSVar67 + 1;" (assignment_expression "pSVar67 = pSVar67 + 1" identifier = (binary_expression "pSVar67 + 1" identifier + number_literal)) ;) (if_statement "if (uVar69 == uVar6) goto LAB_000a2028;" if (parenthesized_expression "(uVar69 == uVar6)" ( (binary_expression "uVar69 == uVar6" identifier == identifier) )) (goto_statement "goto LAB_000a2028;" goto statement_identifier ;)) })) (expression_statement "uVar63 = pSVar67->sh_info;" (assignment_expression "uVar63 = pSVar67->sh_info" identifier = (field_expression "pSVar67->sh_info" identifier -> field_identifier)) ;) (if_statement "if (0xfeff < uVar63) {\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);\n          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n        }" if (parenthesized_expression "(0xfeff < uVar63)" ( (binary_expression "0xfeff < uVar63" number_literal < identifier) )) (compound_statement "{\n                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */\n          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);\n          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n        }" { comment (labeled_statement "elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);" statement_identifier (ERROR "::Elf_file<64,_false,_gold::Object>:" : : (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "initialize_shnum(&this->elf_file_);" (call_expression "initialize_shnum(&this->elf_file_)" identifier (argument_list "(&this->elf_file_)" ( (pointer_expression "&this->elf_file_" & (field_expression "this->elf_file_" identifier -> field_identifier)) ))) ;)) (expression_statement "uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;" (assignment_expression "uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_" identifier = (binary_expression "uVar63 + (this->elf_file_).large_shndx_offset_" identifier + (field_expression "(this->elf_file_).large_shndx_offset_" (parenthesized_expression "(this->elf_file_)" ( (field_expression "this->elf_file_" identifier -> field_identifier) )) . field_identifier))) ;) })) (if_statement "if ((uVar63 == 0) || (uVar6 <= uVar63)) {\n          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");\n          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);\n          goto LAB_000a1f88;\n        }" if (parenthesized_expression "((uVar63 == 0) || (uVar6 <= uVar63))" ( (binary_expression "(uVar63 == 0) || (uVar6 <= uVar63)" (parenthesized_expression "(uVar63 == 0)" ( (binary_expression "uVar63 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar6 <= uVar63)" ( (binary_expression "uVar6 <= uVar63" identifier <= identifier) ))) )) (compound_statement "{\n          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");\n          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);\n          goto LAB_000a1f88;\n        }" { (expression_statement "in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");" (assignment_expression "in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u")" identifier = (cast_expression "(Symbols_data *)gettext("relocation section %u has bad info %u")" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "gettext("relocation section %u has bad info %u")" identifier (argument_list "("relocation section %u has bad info %u")" ( (string_literal ""relocation section %u has bad info %u"" " string_content ") ))))) ;) (labeled_statement "Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);" statement_identifier : (ERROR ":" :) (expression_statement "error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);" (call_expression "error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63)" identifier (argument_list "((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63)" ( (cast_expression "(Object *)this" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(char *)in_stack_fffffe48" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier ))) ;)) (goto_statement "goto LAB_000a1f88;" goto statement_identifier ;) })) (expression_statement "puVar19 = puVar30 + uVar63;" (assignment_expression "puVar19 = puVar30 + uVar63" identifier = (binary_expression "puVar30 + uVar63" identifier + identifier)) ;) (if_statement "if (*puVar19 == 0) {\n          *puVar19 = uVar69;\n          puVar31[uVar63] = EVar8;\n          goto LAB_000a1f88;\n        }" if (parenthesized_expression "(*puVar19 == 0)" ( (binary_expression "*puVar19 == 0" (pointer_expression "*puVar19" * identifier) == number_literal) )) (compound_statement "{\n          *puVar19 = uVar69;\n          puVar31[uVar63] = EVar8;\n          goto LAB_000a1f88;\n        }" { (expression_statement "*puVar19 = uVar69;" (assignment_expression "*puVar19 = uVar69" (pointer_expression "*puVar19" * identifier) = identifier) ;) (expression_statement "puVar31[uVar63] = EVar8;" (assignment_expression "puVar31[uVar63] = EVar8" (subscript_expression "puVar31[uVar63]" identifier [ identifier ]) = identifier) ;) (goto_statement "goto LAB_000a1f88;" goto statement_identifier ;) })) (expression_statement "*puVar19 = 0xffffffff;" (assignment_expression "*puVar19 = 0xffffffff" (pointer_expression "*puVar19" * identifier) = number_literal) ;) (expression_statement "uVar69 = uVar69 + 1;" (assignment_expression "uVar69 = uVar69 + 1" identifier = (binary_expression "uVar69 + 1" identifier + number_literal)) ;) (expression_statement "pSVar67 = pSVar67 + 1;" (assignment_expression "pSVar67 = pSVar67 + 1" identifier = (binary_expression "pSVar67 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar69 != uVar6)" ( (binary_expression "uVar69 != uVar6" identifier != identifier) )) ;) (goto_statement "goto LAB_000a2028;" goto statement_identifier ;) })) })) (expression_statement "local_140 = 0;" (assignment_expression "local_140 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000a2028:\n  if (!bVar24) {\n    ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_finish;\n    ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_start;\n    uVar69 = (int)ppOVar17 - (int)ppOVar54 >> 2;\n    if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n      std::vector<gold::Output_section*,_std::allocator<gold::Output_section*>_>::_M_default_append\n                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)) {\n      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54;\n    }\n    puVar15 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.\n              _M_impl._M_finish;\n    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.\n              _M_impl._M_start;\n    uVar69 = (int)puVar15 - (int)puVar18 >> 3;\n    if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      std::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>::\n      _M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)) {\n      (this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18;\n    }\n  }" statement_identifier : (if_statement "if (!bVar24) {\n    ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_finish;\n    ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_start;\n    uVar69 = (int)ppOVar17 - (int)ppOVar54 >> 2;\n    if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n      std::vector<gold::Output_section*,_std::allocator<gold::Output_section*>_>::_M_default_append\n                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)) {\n      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54;\n    }\n    puVar15 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.\n              _M_impl._M_finish;\n    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.\n              _M_impl._M_start;\n    uVar69 = (int)puVar15 - (int)puVar18 >> 3;\n    if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      std::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>::\n      _M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)) {\n      (this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18;\n    }\n  }" if (parenthesized_expression "(!bVar24)" ( (unary_expression "!bVar24" ! identifier) )) (compound_statement "{\n    ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_finish;\n    ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_start;\n    uVar69 = (int)ppOVar17 - (int)ppOVar54 >> 2;\n    if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n      std::vector<gold::Output_section*,_std::allocator<gold::Output_section*>_>::_M_default_append\n                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)) {\n      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54;\n    }\n    puVar15 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.\n              _M_impl._M_finish;\n    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.\n              _M_impl._M_start;\n    uVar69 = (int)puVar15 - (int)puVar18 >> 3;\n    if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      std::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>::\n      _M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)) {\n      (this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18;\n    }\n  }" { (expression_statement "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_finish;" (field_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_finish" (field_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl" (binary_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std" (assignment_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier)) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_start;" (field_expression "ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl._M_start" (field_expression "ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n               _M_impl" (binary_expression "ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold::Output_section*,_std" (assignment_expression "ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base<gold" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n               super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier)) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "uVar69 = (int)ppOVar17 - (int)ppOVar54 >> 2;" (assignment_expression "uVar69 = (int)ppOVar17 - (int)ppOVar54 >> 2" identifier = (binary_expression "(int)ppOVar17 - (int)ppOVar54 >> 2" (binary_expression "(int)ppOVar17 - (int)ppOVar54" (cast_expression "(int)ppOVar17" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppOVar54" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ;) (if_statement "if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n      std::vector<gold::Output_section*,_std::allocator<gold::Output_section*>_>::_M_default_append\n                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)) {\n      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54;\n    }" if (parenthesized_expression "(uVar69 < uVar6)" ( (binary_expression "uVar69 < uVar6" identifier < identifier) )) (compound_statement "{\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n      std::vector<gold::Output_section*,_std::allocator<gold::Output_section*>_>::_M_default_append\n                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48);\n    }" { (expression_statement "in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);" (assignment_expression "in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69)" identifier = (cast_expression "(Symbols_data *)(uVar6 - uVar69)" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar6 - uVar69)" ( (binary_expression "uVar6 - uVar69" identifier - identifier) )))) ;) (ERROR "std::vector<gold::Output_section*,_std::allocator<gold::" (comma_expression "std::vector<gold::Output_section*,_std" identifier (ERROR "::vector<gold::Output_section*" : : (binary_expression "vector<gold" identifier < identifier) : : identifier *) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Output_section*>_>::_M_default_append\n                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48);" (binary_expression "Output_section*>_>::_M_default_append\n                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48)" (binary_expression "Output_section*>_" identifier * (ERROR ">" >) identifier) > (ERROR "::" : :) (call_expression "_M_default_append\n                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48)" identifier (argument_list "(&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,\n                 (size_type)in_stack_fffffe48)" ( (pointer_expression "&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" & (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier)) , (cast_expression "(size_type)in_stack_fffffe48" ( (type_descriptor "size_type" type_identifier) ) identifier) )))) ;) }) (else_clause "else if ((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)) {\n      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54;\n    }" else (if_statement "if ((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)) {\n      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54;\n    }" if (parenthesized_expression "((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54))" ( (binary_expression "(uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)" (parenthesized_expression "(uVar6 < uVar69)" ( (binary_expression "uVar6 < uVar69" identifier < identifier) )) && (parenthesized_expression "(ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)" ( (comma_expression "ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54" (assignment_expression "ppOVar54 = ppOVar54 + uVar6" identifier = (binary_expression "ppOVar54 + uVar6" identifier + identifier)) , (binary_expression "ppOVar17 != ppOVar54" identifier != identifier)) ))) )) (compound_statement "{\n      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54;\n    }" { (expression_statement "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54;" (assignment_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish = ppOVar54" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.\n      _M_finish" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl" (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold::Output_section*,_std" (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base<gold" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n      super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) = identifier) ;) })))) (ERROR "puVar15 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::" (comma_expression "puVar15 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std" (assignment_expression "puVar15 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<long_long_unsigned_int>_>.\n              _M_impl._M_finish;" (field_expression "allocator<long_long_unsigned_int>_>.\n              _M_impl._M_finish" (field_expression "allocator<long_long_unsigned_int>_>.\n              _M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (ERROR "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std::" (comma_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int,_std" (assignment_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n              super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<long_long_unsigned_int>_>.\n              _M_impl._M_start;" (field_expression "allocator<long_long_unsigned_int>_>.\n              _M_impl._M_start" (field_expression "allocator<long_long_unsigned_int>_>.\n              _M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "uVar69 = (int)puVar15 - (int)puVar18 >> 3;" (assignment_expression "uVar69 = (int)puVar15 - (int)puVar18 >> 3" identifier = (binary_expression "(int)puVar15 - (int)puVar18 >> 3" (binary_expression "(int)puVar15 - (int)puVar18" (cast_expression "(int)puVar15" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ;) (if_statement "if (uVar69 < uVar6) {\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      std::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>::\n      _M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48);\n    }\n    else if ((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)) {\n      (this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18;\n    }" if (parenthesized_expression "(uVar69 < uVar6)" ( (binary_expression "uVar69 < uVar6" identifier < identifier) )) (compound_statement "{\n      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);\n                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */\n      std::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>::\n      _M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48);\n    }" { (expression_statement "in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);" (assignment_expression "in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69)" identifier = (cast_expression "(Symbols_data *)(uVar6 - uVar69)" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar6 - uVar69)" ( (binary_expression "uVar6 - uVar69" identifier - identifier) )))) ;) comment (labeled_statement "std::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>::\n      _M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48);" statement_identifier (ERROR "::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>:" : : (comma_expression "vector<long_long_unsigned_int,_std" (binary_expression "vector<long_long_unsigned_int" identifier < identifier) , identifier) : : (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) > :) : (expression_statement "_M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48);" (call_expression "_M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48)" identifier (argument_list "(&(this->super_Sized_relobj<64,_false>).section_offsets_,\n                        (size_type)in_stack_fffffe48)" ( (pointer_expression "&(this->super_Sized_relobj<64,_false>).section_offsets_" & (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)) , (cast_expression "(size_type)in_stack_fffffe48" ( (type_descriptor "size_type" type_identifier) ) identifier) ))) ;)) }) (else_clause "else if ((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)) {\n      (this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18;\n    }" else (if_statement "if ((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)) {\n      (this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18;\n    }" if (parenthesized_expression "((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18))" ( (binary_expression "(uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)" (parenthesized_expression "(uVar6 < uVar69)" ( (binary_expression "uVar6 < uVar69" identifier < identifier) )) && (parenthesized_expression "(puVar18 = puVar18 + uVar6, puVar15 != puVar18)" ( (comma_expression "puVar18 = puVar18 + uVar6, puVar15 != puVar18" (assignment_expression "puVar18 = puVar18 + uVar6" identifier = (binary_expression "puVar18 + uVar6" identifier + identifier)) , (binary_expression "puVar15 != puVar18" identifier != identifier)) ))) )) (compound_statement "{\n      (this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18;\n    }" { (ERROR "(this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std::" (comma_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int,_std" (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n      super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18;" (assignment_expression "allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish = puVar18" (field_expression "allocator<long_long_unsigned_int>_>._M_impl.\n      _M_finish" (field_expression "allocator<long_long_unsigned_int>_>._M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = identifier) ;) })))) }))) (expression_statement "this_00 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.input_file_;" (assignment_expression "this_00 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.input_file_" identifier = (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.input_file_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) ;) (if_statement "if (this_00 == (Input_file *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */\n    Object::input_file(in_stack_fffffe54);\n  }" if (parenthesized_expression "(this_00 == (Input_file *)0x0)" ( (binary_expression "this_00 == (Input_file *)0x0" identifier == (cast_expression "(Input_file *)0x0" ( (type_descriptor "Input_file *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */\n    Object::input_file(in_stack_fffffe54);\n  }" { comment comment (labeled_statement "Object::input_file(in_stack_fffffe54);" statement_identifier : (ERROR ":" :) (expression_statement "input_file(in_stack_fffffe54);" (call_expression "input_file(in_stack_fffffe54)" identifier (argument_list "(in_stack_fffffe54)" ( identifier ))) ;)) })) comment (ERROR "local_137 = Input_file::" (assignment_expression "local_137 = Input_file" identifier = identifier) : :) (expression_statement "just_symbols(this_00);" (call_expression "just_symbols(this_00)" identifier (argument_list "(this_00)" ( identifier ))) ;) (if_statement "if (local_137) {\n    piVar62 = (int *)&stack0xfffffe54;\n    if (!bVar24) {\n      pFVar20 = sd->section_headers;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        in_stack_fffffe48 = (Symbols_data *)0xc;\n        operator_delete(pFVar20,0xc);\n      }\n      pFVar20 = sd->section_names;\n      sd->section_headers = (File_view *)0x0;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        operator_delete(pFVar20,0xc);\n      }\n      sd->section_names = (File_view *)0x0;\n      piVar62 = (int *)&stack0xfffffe54;\n    }\n  }\n  else {\n    if (local_140 != 0) {\n      if (parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      pPVar7 = parameters->options_->plugins_;\n      shdr.p_ = (Shdr_data<64> *)this;\n      __position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish;\n      if (__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.\n          _M_end_of_storage) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::\n        _M_realloc_insert<gold::Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);\n      }\n      else {\n        *__position._M_current = (Relobj *)this;\n        (pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;\n      }\n      if (0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        std::__throw_length_error("vector::reserve");\n      }\n      pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n               ._M_impl._M_start;\n      if ((uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140) {\n        pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        pDVar40 = (pointer)operator_new(local_140 * 100);\n        if (pDVar9 != pDVar16) {\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }\n        pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n        pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start;\n        if (pDVar55 != pDVar74) {\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }\n        if (pDVar74 != (pointer)0x0) {\n          operator_delete(pDVar74);\n        }\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40;\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140;\n      }\n      this->is_deferred_layout_ = true;\n    }\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = 0;\n    uVar69 = uVar6 + 0x1f >> 5;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage = (_Bit_pointer)0x0;\n    uVar63 = uVar69 * 4;\n                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)operator_new(uVar63);\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + uVar69;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = uVar6 & 0x1f;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + ((int)uVar6 >> 5);\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;\n    memset(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p,0,uVar63);\n    pGVar34 = parameters->options_;\n    if (pGVar34 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }\n    bVar4 = (pGVar34->relocatable_).value;\n    SVar49.p_ = (Shdr_data<64> *)(uint)bVar4;\n    bVar3 = bVar4;\n    if (bVar4 == false) {\n      bVar3 = (pGVar34->emit_relocs_).value;\n    }\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start\n         = (pointer)0x0;\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n         = (pointer)0x0;\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    i = 1;\n    if (uVar6 < 2) {\n      local_16c = 0;\n      local_168 = 0;\nLAB_000a2740:\n      if (!bVar24) {\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;\n        *(Layout **)((int)piVar62 + -0x10) = layout;\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;\n        Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;\n        *(uint *)((int)piVar62 + -0x14) = local_168;\n        *(uint *)((int)piVar62 + -0x18) = local_16c;\n        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;\n        *(Layout **)((int)piVar62 + -0x20) = layout;\n        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;\n        Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));\n        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;\n      }\n      if (bVar26) {\n        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start) {\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }\n      if (bVar3 != 0) {\n        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;\n        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;\n        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0;\n        if (uVar69 == 0) {\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }\n        else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68;\n        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;\n      }\n      if (bVar25) {\n        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish) {\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n        puVar58 = debug_types_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n      }\n      if (bVar24) {\n        if (local_190->section_headers_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->section_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbols_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbol_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0;\n      }\n      else {\n        pFVar20 = sd->section_headers;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        pFVar20 = sd->section_names;\n        sd->section_headers = (File_view *)0x0;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        sd->section_names = (File_view *)0x0;\n      }\n    }" if (parenthesized_expression "(local_137)" ( identifier )) (compound_statement "{\n    piVar62 = (int *)&stack0xfffffe54;\n    if (!bVar24) {\n      pFVar20 = sd->section_headers;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        in_stack_fffffe48 = (Symbols_data *)0xc;\n        operator_delete(pFVar20,0xc);\n      }\n      pFVar20 = sd->section_names;\n      sd->section_headers = (File_view *)0x0;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        operator_delete(pFVar20,0xc);\n      }\n      sd->section_names = (File_view *)0x0;\n      piVar62 = (int *)&stack0xfffffe54;\n    }\n  }" { (expression_statement "piVar62 = (int *)&stack0xfffffe54;" (assignment_expression "piVar62 = (int *)&stack0xfffffe54" identifier = (cast_expression "(int *)&stack0xfffffe54" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&stack0xfffffe54" & identifier))) ;) (if_statement "if (!bVar24) {\n      pFVar20 = sd->section_headers;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        in_stack_fffffe48 = (Symbols_data *)0xc;\n        operator_delete(pFVar20,0xc);\n      }\n      pFVar20 = sd->section_names;\n      sd->section_headers = (File_view *)0x0;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        operator_delete(pFVar20,0xc);\n      }\n      sd->section_names = (File_view *)0x0;\n      piVar62 = (int *)&stack0xfffffe54;\n    }" if (parenthesized_expression "(!bVar24)" ( (unary_expression "!bVar24" ! identifier) )) (compound_statement "{\n      pFVar20 = sd->section_headers;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        in_stack_fffffe48 = (Symbols_data *)0xc;\n        operator_delete(pFVar20,0xc);\n      }\n      pFVar20 = sd->section_names;\n      sd->section_headers = (File_view *)0x0;\n      if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        operator_delete(pFVar20,0xc);\n      }\n      sd->section_names = (File_view *)0x0;\n      piVar62 = (int *)&stack0xfffffe54;\n    }" { (expression_statement "pFVar20 = sd->section_headers;" (assignment_expression "pFVar20 = sd->section_headers" identifier = (field_expression "sd->section_headers" identifier -> field_identifier)) ;) (if_statement "if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        in_stack_fffffe48 = (Symbols_data *)0xc;\n        operator_delete(pFVar20,0xc);\n      }" if (parenthesized_expression "(pFVar20 != (File_view *)0x0)" ( (binary_expression "pFVar20 != (File_view *)0x0" identifier != (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        in_stack_fffffe48 = (Symbols_data *)0xc;\n        operator_delete(pFVar20,0xc);\n      }" { (labeled_statement "File_view::~File_view(pFVar20,(int)in_stack_fffffe48);" statement_identifier : (ERROR ":" :) (expression_statement "~File_view(pFVar20,(int)in_stack_fffffe48);" (unary_expression "~File_view(pFVar20,(int)in_stack_fffffe48)" ~ (call_expression "File_view(pFVar20,(int)in_stack_fffffe48)" identifier (argument_list "(pFVar20,(int)in_stack_fffffe48)" ( identifier , (cast_expression "(int)in_stack_fffffe48" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;)) (expression_statement "in_stack_fffffe48 = (Symbols_data *)0xc;" (assignment_expression "in_stack_fffffe48 = (Symbols_data *)0xc" identifier = (cast_expression "(Symbols_data *)0xc" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "operator_delete(pFVar20,0xc);" (call_expression "operator_delete(pFVar20,0xc)" identifier (argument_list "(pFVar20,0xc)" ( identifier , number_literal ))) ;) })) (expression_statement "pFVar20 = sd->section_names;" (assignment_expression "pFVar20 = sd->section_names" identifier = (field_expression "sd->section_names" identifier -> field_identifier)) ;) (expression_statement "sd->section_headers = (File_view *)0x0;" (assignment_expression "sd->section_headers = (File_view *)0x0" (field_expression "sd->section_headers" identifier -> field_identifier) = (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (pFVar20 != (File_view *)0x0) {\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        operator_delete(pFVar20,0xc);\n      }" if (parenthesized_expression "(pFVar20 != (File_view *)0x0)" ( (binary_expression "pFVar20 != (File_view *)0x0" identifier != (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);\n        operator_delete(pFVar20,0xc);\n      }" { (labeled_statement "File_view::~File_view(pFVar20,(int)in_stack_fffffe48);" statement_identifier : (ERROR ":" :) (expression_statement "~File_view(pFVar20,(int)in_stack_fffffe48);" (unary_expression "~File_view(pFVar20,(int)in_stack_fffffe48)" ~ (call_expression "File_view(pFVar20,(int)in_stack_fffffe48)" identifier (argument_list "(pFVar20,(int)in_stack_fffffe48)" ( identifier , (cast_expression "(int)in_stack_fffffe48" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;)) (expression_statement "operator_delete(pFVar20,0xc);" (call_expression "operator_delete(pFVar20,0xc)" identifier (argument_list "(pFVar20,0xc)" ( identifier , number_literal ))) ;) })) (expression_statement "sd->section_names = (File_view *)0x0;" (assignment_expression "sd->section_names = (File_view *)0x0" (field_expression "sd->section_names" identifier -> field_identifier) = (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "piVar62 = (int *)&stack0xfffffe54;" (assignment_expression "piVar62 = (int *)&stack0xfffffe54" identifier = (cast_expression "(int *)&stack0xfffffe54" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&stack0xfffffe54" & identifier))) ;) })) }) (else_clause "else {\n    if (local_140 != 0) {\n      if (parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      pPVar7 = parameters->options_->plugins_;\n      shdr.p_ = (Shdr_data<64> *)this;\n      __position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish;\n      if (__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.\n          _M_end_of_storage) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::\n        _M_realloc_insert<gold::Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);\n      }\n      else {\n        *__position._M_current = (Relobj *)this;\n        (pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;\n      }\n      if (0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        std::__throw_length_error("vector::reserve");\n      }\n      pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n               ._M_impl._M_start;\n      if ((uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140) {\n        pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        pDVar40 = (pointer)operator_new(local_140 * 100);\n        if (pDVar9 != pDVar16) {\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }\n        pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n        pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start;\n        if (pDVar55 != pDVar74) {\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }\n        if (pDVar74 != (pointer)0x0) {\n          operator_delete(pDVar74);\n        }\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40;\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140;\n      }\n      this->is_deferred_layout_ = true;\n    }\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = 0;\n    uVar69 = uVar6 + 0x1f >> 5;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage = (_Bit_pointer)0x0;\n    uVar63 = uVar69 * 4;\n                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)operator_new(uVar63);\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + uVar69;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = uVar6 & 0x1f;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + ((int)uVar6 >> 5);\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;\n    memset(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p,0,uVar63);\n    pGVar34 = parameters->options_;\n    if (pGVar34 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }\n    bVar4 = (pGVar34->relocatable_).value;\n    SVar49.p_ = (Shdr_data<64> *)(uint)bVar4;\n    bVar3 = bVar4;\n    if (bVar4 == false) {\n      bVar3 = (pGVar34->emit_relocs_).value;\n    }\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start\n         = (pointer)0x0;\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n         = (pointer)0x0;\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    i = 1;\n    if (uVar6 < 2) {\n      local_16c = 0;\n      local_168 = 0;\nLAB_000a2740:\n      if (!bVar24) {\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;\n        *(Layout **)((int)piVar62 + -0x10) = layout;\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;\n        Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;\n        *(uint *)((int)piVar62 + -0x14) = local_168;\n        *(uint *)((int)piVar62 + -0x18) = local_16c;\n        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;\n        *(Layout **)((int)piVar62 + -0x20) = layout;\n        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;\n        Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));\n        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;\n      }\n      if (bVar26) {\n        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start) {\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }\n      if (bVar3 != 0) {\n        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;\n        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;\n        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0;\n        if (uVar69 == 0) {\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }\n        else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68;\n        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;\n      }\n      if (bVar25) {\n        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish) {\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n        puVar58 = debug_types_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n      }\n      if (bVar24) {\n        if (local_190->section_headers_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->section_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbols_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbol_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0;\n      }\n      else {\n        pFVar20 = sd->section_headers;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        pFVar20 = sd->section_names;\n        sd->section_headers = (File_view *)0x0;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        sd->section_names = (File_view *)0x0;\n      }\n    }" else (compound_statement "{\n    if (local_140 != 0) {\n      if (parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      pPVar7 = parameters->options_->plugins_;\n      shdr.p_ = (Shdr_data<64> *)this;\n      __position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish;\n      if (__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.\n          _M_end_of_storage) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::\n        _M_realloc_insert<gold::Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);\n      }\n      else {\n        *__position._M_current = (Relobj *)this;\n        (pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;\n      }\n      if (0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        std::__throw_length_error("vector::reserve");\n      }\n      pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n               ._M_impl._M_start;\n      if ((uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140) {\n        pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        pDVar40 = (pointer)operator_new(local_140 * 100);\n        if (pDVar9 != pDVar16) {\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }\n        pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n        pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start;\n        if (pDVar55 != pDVar74) {\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }\n        if (pDVar74 != (pointer)0x0) {\n          operator_delete(pDVar74);\n        }\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40;\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140;\n      }\n      this->is_deferred_layout_ = true;\n    }\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = 0;\n    uVar69 = uVar6 + 0x1f >> 5;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage = (_Bit_pointer)0x0;\n    uVar63 = uVar69 * 4;\n                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)operator_new(uVar63);\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + uVar69;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = uVar6 & 0x1f;\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + ((int)uVar6 >> 5);\n    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;\n    memset(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p,0,uVar63);\n    pGVar34 = parameters->options_;\n    if (pGVar34 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }\n    bVar4 = (pGVar34->relocatable_).value;\n    SVar49.p_ = (Shdr_data<64> *)(uint)bVar4;\n    bVar3 = bVar4;\n    if (bVar4 == false) {\n      bVar3 = (pGVar34->emit_relocs_).value;\n    }\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start\n         = (pointer)0x0;\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n         = (pointer)0x0;\n    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;\n    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;\n    i = 1;\n    if (uVar6 < 2) {\n      local_16c = 0;\n      local_168 = 0;\nLAB_000a2740:\n      if (!bVar24) {\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;\n        *(Layout **)((int)piVar62 + -0x10) = layout;\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;\n        Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;\n        *(uint *)((int)piVar62 + -0x14) = local_168;\n        *(uint *)((int)piVar62 + -0x18) = local_16c;\n        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;\n        *(Layout **)((int)piVar62 + -0x20) = layout;\n        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;\n        Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));\n        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;\n      }\n      if (bVar26) {\n        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start) {\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }\n      if (bVar3 != 0) {\n        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;\n        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;\n        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0;\n        if (uVar69 == 0) {\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }\n        else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68;\n        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;\n      }\n      if (bVar25) {\n        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish) {\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n        puVar58 = debug_types_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n      }\n      if (bVar24) {\n        if (local_190->section_headers_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->section_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbols_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbol_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0;\n      }\n      else {\n        pFVar20 = sd->section_headers;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        pFVar20 = sd->section_names;\n        sd->section_headers = (File_view *)0x0;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        sd->section_names = (File_view *)0x0;\n      }\n    }" { (if_statement "if (local_140 != 0) {\n      if (parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      pPVar7 = parameters->options_->plugins_;\n      shdr.p_ = (Shdr_data<64> *)this;\n      __position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish;\n      if (__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.\n          _M_end_of_storage) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::\n        _M_realloc_insert<gold::Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);\n      }\n      else {\n        *__position._M_current = (Relobj *)this;\n        (pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;\n      }\n      if (0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        std::__throw_length_error("vector::reserve");\n      }\n      pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n               ._M_impl._M_start;\n      if ((uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140) {\n        pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        pDVar40 = (pointer)operator_new(local_140 * 100);\n        if (pDVar9 != pDVar16) {\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }\n        pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n        pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start;\n        if (pDVar55 != pDVar74) {\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }\n        if (pDVar74 != (pointer)0x0) {\n          operator_delete(pDVar74);\n        }\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40;\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140;\n      }\n      this->is_deferred_layout_ = true;\n    }" if (parenthesized_expression "(local_140 != 0)" ( (binary_expression "local_140 != 0" identifier != number_literal) )) (compound_statement "{\n      if (parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      pPVar7 = parameters->options_->plugins_;\n      shdr.p_ = (Shdr_data<64> *)this;\n      __position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish;\n      if (__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.\n          _M_end_of_storage) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::\n        _M_realloc_insert<gold::Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);\n      }\n      else {\n        *__position._M_current = (Relobj *)this;\n        (pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;\n      }\n      if (0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        std::__throw_length_error("vector::reserve");\n      }\n      pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n               ._M_impl._M_start;\n      if ((uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140) {\n        pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        pDVar40 = (pointer)operator_new(local_140 * 100);\n        if (pDVar9 != pDVar16) {\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }\n        pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n        pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start;\n        if (pDVar55 != pDVar74) {\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }\n        if (pDVar74 != (pointer)0x0) {\n          operator_delete(pDVar74);\n        }\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40;\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140;\n      }\n      this->is_deferred_layout_ = true;\n    }" { (if_statement "if (parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }" if (parenthesized_expression "(parameters->options_ == (General_options *)0x0)" ( (binary_expression "parameters->options_ == (General_options *)0x0" (field_expression "parameters->options_" identifier -> field_identifier) == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }" { comment comment (expression_statement "do_gold_unreachable("../../gold/parameters.h",0x5c,"options");" (call_expression "do_gold_unreachable("../../gold/parameters.h",0x5c,"options")" identifier (argument_list "("../../gold/parameters.h",0x5c,"options")" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""options"" " string_content ") ))) ;) })) (expression_statement "pPVar7 = parameters->options_->plugins_;" (assignment_expression "pPVar7 = parameters->options_->plugins_" identifier = (field_expression "parameters->options_->plugins_" (field_expression "parameters->options_" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "shdr.p_ = (Shdr_data<64> *)this;" (assignment_expression "shdr.p_ = (Shdr_data<64> *)this" (field_expression "shdr.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)this" ( (binary_expression "Shdr_data<64> *)this" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)this" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "__position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish;" (field_expression "__position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish" (field_expression "__position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl" (binary_expression "__position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_" (binary_expression "__position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std::allocator<gold" (binary_expression "__position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold::Relobj*,_std" (assignment_expression "__position._M_current =\n           (pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold" (field_expression "__position._M_current" identifier . field_identifier) = (binary_expression "(pPVar7->deferred_layout_objects_).\n           super__Vector_base<gold" (field_expression "(pPVar7->deferred_layout_objects_).\n           super__Vector_base" (parenthesized_expression "(pPVar7->deferred_layout_objects_)" ( (field_expression "pPVar7->deferred_layout_objects_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.\n          _M_end_of_storage) {\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::\n        _M_realloc_insert<gold::Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);\n      }\n      else {\n        *__position._M_current = (Relobj *)this;\n        (pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;\n      }" if (parenthesized_expression "(__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.\n          _M_end_of_storage)" ( (field_expression "__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.\n          _M_end_of_storage" (field_expression "__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl" (binary_expression "__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_" (binary_expression "__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std::allocator<gold" (binary_expression "__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold::Relobj*,_std" (binary_expression "__position._M_current ==\n          (pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold" (field_expression "__position._M_current" identifier . field_identifier) == (binary_expression "(pPVar7->deferred_layout_objects_).\n          super__Vector_base<gold" (field_expression "(pPVar7->deferred_layout_objects_).\n          super__Vector_base" (parenthesized_expression "(pPVar7->deferred_layout_objects_)" ( (field_expression "pPVar7->deferred_layout_objects_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */\n        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::\n        _M_realloc_insert<gold::Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);\n      }" { comment (ERROR "std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::\n        _M_realloc_insert<gold::" (comma_expression "std::vector<gold::Relobj*,_std" identifier (ERROR "::vector<gold::Relobj*" : : (binary_expression "vector<gold" identifier < identifier) : : identifier *) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Relobj*>_>::\n        _M_realloc_insert<gold" (binary_expression "Relobj*>_>::\n        _M_realloc_insert" (binary_expression "Relobj*>_" identifier * (ERROR ">" >) identifier) > (ERROR "::" : :) identifier) < identifier) : :) (expression_statement "Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);" (binary_expression "Relobj*_const&>\n                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr)" (binary_expression "Relobj*_const" identifier * identifier) (ERROR "&" &) > (parenthesized_expression "(&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr)" ( (comma_expression "&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr" (pointer_expression "&pPVar7->deferred_layout_objects_" & (field_expression "pPVar7->deferred_layout_objects_" identifier -> field_identifier)) , (comma_expression "__position,(Relobj **)&shdr" identifier , (cast_expression "(Relobj **)&shdr" ( (type_descriptor "Relobj **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&shdr" & identifier)))) ))) ;) }) (else_clause "else {\n        *__position._M_current = (Relobj *)this;\n        (pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;\n      }" else (compound_statement "{\n        *__position._M_current = (Relobj *)this;\n        (pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;\n      }" { (expression_statement "*__position._M_current = (Relobj *)this;" (assignment_expression "*__position._M_current = (Relobj *)this" (pointer_expression "*__position._M_current" * (field_expression "__position._M_current" identifier . field_identifier)) = (cast_expression "(Relobj *)this" ( (type_descriptor "Relobj *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1;" (assignment_expression "(pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =\n             __position._M_current + 1" (field_expression "(pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish" (field_expression "(pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl" (binary_expression "(pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_" (binary_expression "(pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std::allocator<gold" (binary_expression "(pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold::Relobj*,_std" (binary_expression "(pPVar7->deferred_layout_objects_).\n        super__Vector_base<gold" (field_expression "(pPVar7->deferred_layout_objects_).\n        super__Vector_base" (parenthesized_expression "(pPVar7->deferred_layout_objects_)" ( (field_expression "pPVar7->deferred_layout_objects_" identifier -> field_identifier) )) . field_identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (binary_expression "__position._M_current + 1" (field_expression "__position._M_current" identifier . field_identifier) + number_literal)) ;) }))) (if_statement "if (0x28f5c28 < local_140) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        std::__throw_length_error("vector::reserve");\n      }" if (parenthesized_expression "(0x28f5c28 < local_140)" ( (binary_expression "0x28f5c28 < local_140" number_literal < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */\n        std::__throw_length_error("vector::reserve");\n      }" { comment comment (labeled_statement "std::__throw_length_error("vector::reserve");" statement_identifier : (ERROR ":" :) (expression_statement "__throw_length_error("vector::reserve");" (call_expression "__throw_length_error("vector::reserve")" identifier (argument_list "("vector::reserve")" ( (string_literal ""vector::reserve"" " string_content ") ))) ;)) })) (ERROR "pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold::Sized_relobj_file<64" (assignment_expression "pDVar9 = (this->deferred_layout_).\n               super__Vector_base<gold" identifier = (binary_expression "(this->deferred_layout_).\n               super__Vector_base<gold" (field_expression "(this->deferred_layout_).\n               super__Vector_base" (parenthesized_expression "(this->deferred_layout_)" ( (field_expression "this->deferred_layout_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>_>\n               ._M_impl._M_start;" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n               ._M_impl._M_start" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (field_expression "_false>::Deferred_layout>_>\n               ._M_impl._M_start" (field_expression "_false>::Deferred_layout>_>\n               ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) ;) (if_statement "if ((uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140) {\n        pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        pDVar40 = (pointer)operator_new(local_140 * 100);\n        if (pDVar9 != pDVar16) {\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }\n        pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n        pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start;\n        if (pDVar55 != pDVar74) {\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }\n        if (pDVar74 != (pointer)0x0) {\n          operator_delete(pDVar74);\n        }\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40;\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140;\n      }" if (parenthesized_expression "((uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140)" ( (binary_expression "(uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140" (call_expression "(uint)(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7)" ( (binary_expression "((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7" (parenthesized_expression "((int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2)" ( (ERROR "(int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "(int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "(int)(this->deferred_layout_).\n                       super__Vector_base<gold::Sized_relobj_file<64" (binary_expression "(int)(this->deferred_layout_).\n                       super__Vector_base<gold" (cast_expression "(int)(this->deferred_layout_).\n                       super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "(this->deferred_layout_).\n                       super__Vector_base" (parenthesized_expression "(this->deferred_layout_)" ( (field_expression "this->deferred_layout_" identifier -> field_identifier) )) . field_identifier)) < identifier) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2" (binary_expression "_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage - (int)pDVar9" (field_expression "_false>::Deferred_layout>_>\n                       ._M_impl._M_end_of_storage" (field_expression "_false>::Deferred_layout>_>\n                       ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) - (cast_expression "(int)pDVar9" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) )) * number_literal) ))) < identifier) )) (compound_statement "{\n        pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */\n        pDVar40 = (pointer)operator_new(local_140 * 100);\n        if (pDVar9 != pDVar16) {\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }\n        pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;\n        pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start;\n        if (pDVar55 != pDVar74) {\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }\n        if (pDVar74 != (pointer)0x0) {\n          operator_delete(pDVar74);\n        }\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40;\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);\n        (this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140;\n      }" { (ERROR "pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64" (assignment_expression "pDVar16 = (this->deferred_layout_).\n                  super__Vector_base<gold" identifier = (binary_expression "(this->deferred_layout_).\n                  super__Vector_base<gold" (field_expression "(this->deferred_layout_).\n                  super__Vector_base" (parenthesized_expression "(this->deferred_layout_)" ( (field_expression "this->deferred_layout_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (field_expression "_false>::Deferred_layout>_>\n                  ._M_impl._M_finish" (field_expression "_false>::Deferred_layout>_>\n                  ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) ;) comment (expression_statement "pDVar40 = (pointer)operator_new(local_140 * 100);" (assignment_expression "pDVar40 = (pointer)operator_new(local_140 * 100)" identifier = (cast_expression "(pointer)operator_new(local_140 * 100)" ( (type_descriptor "pointer" type_identifier) ) (call_expression "operator_new(local_140 * 100)" identifier (argument_list "(local_140 * 100)" ( (binary_expression "local_140 * 100" identifier * number_literal) ))))) ;) (if_statement "if (pDVar9 != pDVar16) {\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }" if (parenthesized_expression "(pDVar9 != pDVar16)" ( (binary_expression "pDVar9 != pDVar16" identifier != identifier) )) (compound_statement "{\n          paVar42 = &(pDVar9->name_).field_2;\n          pDVar55 = pDVar40;\n          do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);\n        }" { (expression_statement "paVar42 = &(pDVar9->name_).field_2;" (assignment_expression "paVar42 = &(pDVar9->name_).field_2" identifier = (pointer_expression "&(pDVar9->name_).field_2" & (field_expression "(pDVar9->name_).field_2" (parenthesized_expression "(pDVar9->name_)" ( (field_expression "pDVar9->name_" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "pDVar55 = pDVar40;" (assignment_expression "pDVar55 = pDVar40" identifier = identifier) ;) (do_statement "do {\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41);" do (compound_statement "{\n            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;\n            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }\n            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);\n            uVar69 = paVar42[1]._M_allocated_capacity;\n            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;\n            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);\n            *(size_type *)((int)paVar42 + -4) = 0;\n            paVar42->_M_local_buf[0] = '\0';\n            pDVar55->shndx_ = uVar69;\n            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);\n            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);\n            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);\n            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);\n            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);\n            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);\n            paVar42 = paVar41;\n            pDVar55 = pDVar55 + 1;\n          }" { (expression_statement "(pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;" (assignment_expression "(pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2" (field_expression "(pDVar55->name_)._M_dataplus._M_p" (field_expression "(pDVar55->name_)._M_dataplus" (parenthesized_expression "(pDVar55->name_)" ( (field_expression "pDVar55->name_" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (binary_expression "(pointer)&(pDVar55->name_).field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "(pDVar55->name_).field_2" (parenthesized_expression "(pDVar55->name_)" ( (field_expression "pDVar55->name_" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;" (assignment_expression "pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p" identifier = (field_expression "(((string *)((int)paVar42 + -8))->_M_dataplus)._M_p" (parenthesized_expression "(((string *)((int)paVar42 + -8))->_M_dataplus)" ( (field_expression "((string *)((int)paVar42 + -8))->_M_dataplus" (parenthesized_expression "((string *)((int)paVar42 + -8))" ( (cast_expression "(string *)((int)paVar42 + -8)" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + -8)" ( (binary_expression "(int)paVar42 + -8" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) )) -> 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                 *)pcVar22 == paVar42) {\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }\n            else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 == paVar42)" ( (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                 *)pcVar22 == paVar42" (binary_expression "allocator<char>_>_9\n                 *)pcVar22" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n                 *)pcVar22" identifier * (ERROR ")" )) identifier)) == identifier) )) )) (compound_statement "{\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);\n              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);\n            }" { (expression_statement "(pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;" (assignment_expression "(pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity" (field_expression "(pDVar55->name_).field_2._M_allocated_capacity" (field_expression "(pDVar55->name_).field_2" (parenthesized_expression "(pDVar55->name_)" ( (field_expression "pDVar55->name_" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (field_expression "paVar42->_M_allocated_capacity" identifier -> field_identifier)) ;) (expression_statement "*(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4);" (assignment_expression "*(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =\n                   *(undefined4 *)((int)paVar42 + 4)" (pointer_expression "*(undefined4 *)((int)&(pDVar55->name_).field_2 + 4)" * (cast_expression "(undefined4 *)((int)&(pDVar55->name_).field_2 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(pDVar55->name_).field_2 + 4)" ( (binary_expression "(int)&(pDVar55->name_).field_2 + 4" (cast_expression "(int)&(pDVar55->name_).field_2" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(pDVar55->name_).field_2" & (field_expression "(pDVar55->name_).field_2" (parenthesized_expression "(pDVar55->name_)" ( (field_expression "pDVar55->name_" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 4)" * (cast_expression "(undefined4 *)((int)paVar42 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 4)" ( (binary_expression "(int)paVar42 + 4" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8);" (assignment_expression "*(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =\n                   *(undefined4 *)((int)paVar42 + 8)" (pointer_expression "*(undefined4 *)((int)&(pDVar55->name_).field_2 + 8)" * (cast_expression "(undefined4 *)((int)&(pDVar55->name_).field_2 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(pDVar55->name_).field_2 + 8)" ( (binary_expression "(int)&(pDVar55->name_).field_2 + 8" (cast_expression "(int)&(pDVar55->name_).field_2" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(pDVar55->name_).field_2" & (field_expression "(pDVar55->name_).field_2" (parenthesized_expression "(pDVar55->name_)" ( (field_expression "pDVar55->name_" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 8)" * (cast_expression "(undefined4 *)((int)paVar42 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 8)" ( (binary_expression "(int)paVar42 + 8" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc);" (assignment_expression "*(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =\n                   *(undefined4 *)((int)paVar42 + 0xc)" (pointer_expression "*(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc)" * (cast_expression "(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(pDVar55->name_).field_2 + 0xc)" ( (binary_expression "(int)&(pDVar55->name_).field_2 + 0xc" (cast_expression "(int)&(pDVar55->name_).field_2" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(pDVar55->name_).field_2" & (field_expression "(pDVar55->name_).field_2" (parenthesized_expression "(pDVar55->name_)" ( (field_expression "pDVar55->name_" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0xc)" * (cast_expression "(undefined4 *)((int)paVar42 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0xc)" ( (binary_expression "(int)paVar42 + 0xc" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) }) (else_clause "else {\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }" else (compound_statement "{\n              (pDVar55->name_)._M_dataplus._M_p = pcVar22;\n              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;\n            }" { (expression_statement "(pDVar55->name_)._M_dataplus._M_p = pcVar22;" (assignment_expression "(pDVar55->name_)._M_dataplus._M_p = pcVar22" (field_expression "(pDVar55->name_)._M_dataplus._M_p" (field_expression "(pDVar55->name_)._M_dataplus" (parenthesized_expression "(pDVar55->name_)" ( (field_expression "pDVar55->name_" identifier -> field_identifier) )) . field_identifier) . field_identifier) = identifier) ;) (expression_statement "(pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;" (assignment_expression "(pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity" (field_expression "(pDVar55->name_).field_2._M_allocated_capacity" (field_expression "(pDVar55->name_).field_2" (parenthesized_expression "(pDVar55->name_)" ( (field_expression "pDVar55->name_" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (field_expression "paVar42->_M_allocated_capacity" identifier -> field_identifier)) ;) }))) (expression_statement "(pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);" (assignment_expression "(pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4)" (field_expression "(pDVar55->name_)._M_string_length" (parenthesized_expression "(pDVar55->name_)" ( (field_expression "pDVar55->name_" identifier -> field_identifier) )) . field_identifier) = (pointer_expression "*(size_type *)((int)paVar42 + -4)" * (cast_expression "(size_type *)((int)paVar42 + -4)" ( (type_descriptor "size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + -4)" ( (binary_expression "(int)paVar42 + -4" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar69 = paVar42[1]._M_allocated_capacity;" (assignment_expression "uVar69 = paVar42[1]._M_allocated_capacity" identifier = (field_expression "paVar42[1]._M_allocated_capacity" (subscript_expression "paVar42[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "(((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;" (assignment_expression "(((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42" (field_expression "(((string *)((int)paVar42 + -8))->_M_dataplus)._M_p" (parenthesized_expression "(((string *)((int)paVar42 + -8))->_M_dataplus)" ( (field_expression "((string *)((int)paVar42 + -8))->_M_dataplus" (parenthesized_expression "((string *)((int)paVar42 + -8))" ( (cast_expression "(string *)((int)paVar42 + -8)" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + -8)" ( (binary_expression "(int)paVar42 + -8" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) )) -> field_identifier) )) . field_identifier) = (cast_expression "(pointer)paVar42" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) (expression_statement "paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100);" (assignment_expression "paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100)" identifier = (call_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                       *)((int)paVar42 + 100)" (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\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) : :) (binary_expression "allocator<char>_>_9" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) (ERROR "*" *) )) (argument_list "((int)paVar42 + 100)" ( (binary_expression "(int)paVar42 + 100" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "*(size_type *)((int)paVar42 + -4) = 0;" (assignment_expression "*(size_type *)((int)paVar42 + -4) = 0" (pointer_expression "*(size_type *)((int)paVar42 + -4)" * (cast_expression "(size_type *)((int)paVar42 + -4)" ( (type_descriptor "size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + -4)" ( (binary_expression "(int)paVar42 + -4" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "paVar42->_M_local_buf[0] = '\0';" (assignment_expression "paVar42->_M_local_buf[0] = '\0'" (subscript_expression "paVar42->_M_local_buf[0]" (field_expression "paVar42->_M_local_buf" identifier -> field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pDVar55->shndx_ = uVar69;" (assignment_expression "pDVar55->shndx_ = uVar69" (field_expression "pDVar55->shndx_" identifier -> field_identifier) = identifier) ;) (expression_statement "pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);" (assignment_expression "pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14)" (field_expression "pDVar55->reloc_shndx_" identifier -> field_identifier) = (pointer_expression "*(uint *)((int)paVar42 + 0x14)" * (cast_expression "(uint *)((int)paVar42 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x14)" ( (binary_expression "(int)paVar42 + 0x14" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);" (assignment_expression "pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18)" (field_expression "pDVar55->reloc_type_" identifier -> field_identifier) = (pointer_expression "*(uint *)((int)paVar42 + 0x18)" * (cast_expression "(uint *)((int)paVar42 + 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x18)" ( (binary_expression "(int)paVar42 + 0x18" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);" (assignment_expression "*(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c)" (pointer_expression "*(undefined4 *)pDVar55->shdr_data_" * (cast_expression "(undefined4 *)pDVar55->shdr_data_" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pDVar55->shdr_data_" identifier -> field_identifier))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x1c)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x1c)" ( (binary_expression "(int)paVar42 + 0x1c" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;" (assignment_expression "*(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity" (pointer_expression "*(size_type *)(pDVar55->shdr_data_ + 4)" * (cast_expression "(size_type *)(pDVar55->shdr_data_ + 4)" ( (type_descriptor "size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 4)" ( (binary_expression "pDVar55->shdr_data_ + 4" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (field_expression "paVar42[2]._M_allocated_capacity" (subscript_expression "paVar42[2]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 8)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 8)" ( (binary_expression "pDVar55->shdr_data_ + 8" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x24)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x24)" ( (binary_expression "(int)paVar42 + 0x24" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0xc)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0xc)" ( (binary_expression "pDVar55->shdr_data_ + 0xc" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x28)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x28)" ( (binary_expression "(int)paVar42 + 0x28" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x10)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x10)" ( (binary_expression "pDVar55->shdr_data_ + 0x10" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x2c)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x2c)" ( (binary_expression "(int)paVar42 + 0x2c" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;" (assignment_expression "*(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity" (pointer_expression "*(size_type *)(pDVar55->shdr_data_ + 0x14)" * (cast_expression "(size_type *)(pDVar55->shdr_data_ + 0x14)" ( (type_descriptor "size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x14)" ( (binary_expression "pDVar55->shdr_data_ + 0x14" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (field_expression "paVar42[3]._M_allocated_capacity" (subscript_expression "paVar42[3]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x18)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x18)" ( (binary_expression "pDVar55->shdr_data_ + 0x18" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x34)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x34)" ( (binary_expression "(int)paVar42 + 0x34" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x1c)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x1c)" ( (binary_expression "pDVar55->shdr_data_ + 0x1c" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x38)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x38)" ( (binary_expression "(int)paVar42 + 0x38" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x20)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x20)" ( (binary_expression "pDVar55->shdr_data_ + 0x20" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x3c)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x3c)" ( (binary_expression "(int)paVar42 + 0x3c" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;" (assignment_expression "*(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity" (pointer_expression "*(size_type *)(pDVar55->shdr_data_ + 0x24)" * (cast_expression "(size_type *)(pDVar55->shdr_data_ + 0x24)" ( (type_descriptor "size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x24)" ( (binary_expression "pDVar55->shdr_data_ + 0x24" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (field_expression "paVar42[4]._M_allocated_capacity" (subscript_expression "paVar42[4]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x28)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x28)" ( (binary_expression "pDVar55->shdr_data_ + 0x28" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x44)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x44)" ( (binary_expression "(int)paVar42 + 0x44" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x2c)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x2c)" ( (binary_expression "pDVar55->shdr_data_ + 0x2c" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x48)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x48)" ( (binary_expression "(int)paVar42 + 0x48" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x30)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x30)" ( (binary_expression "pDVar55->shdr_data_ + 0x30" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x4c)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x4c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x4c)" ( (binary_expression "(int)paVar42 + 0x4c" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;" (assignment_expression "*(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity" (pointer_expression "*(size_type *)(pDVar55->shdr_data_ + 0x34)" * (cast_expression "(size_type *)(pDVar55->shdr_data_ + 0x34)" ( (type_descriptor "size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x34)" ( (binary_expression "pDVar55->shdr_data_ + 0x34" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (field_expression "paVar42[5]._M_allocated_capacity" (subscript_expression "paVar42[5]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x38)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x38)" ( (binary_expression "pDVar55->shdr_data_ + 0x38" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x54)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x54)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x54)" ( (binary_expression "(int)paVar42 + 0x54" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);" (assignment_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58)" (pointer_expression "*(undefined4 *)(pDVar55->shdr_data_ + 0x3c)" * (cast_expression "(undefined4 *)(pDVar55->shdr_data_ + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar55->shdr_data_ + 0x3c)" ( (binary_expression "pDVar55->shdr_data_ + 0x3c" (field_expression "pDVar55->shdr_data_" identifier -> field_identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)paVar42 + 0x58)" * (cast_expression "(undefined4 *)((int)paVar42 + 0x58)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)paVar42 + 0x58)" ( (binary_expression "(int)paVar42 + 0x58" (cast_expression "(int)paVar42" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "paVar42 = paVar41;" (assignment_expression "paVar42 = paVar41" identifier = identifier) ;) (expression_statement "pDVar55 = pDVar55 + 1;" (assignment_expression "pDVar55 = pDVar55 + 1" identifier = (binary_expression "pDVar55 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41)" ( (binary_expression "&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2 != paVar41" (pointer_expression "&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2" & (field_expression "pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_.field_2" (field_expression "pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1].name_" (subscript_expression "pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1]" identifier [ (binary_expression "(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff) + 1" (parenthesized_expression "(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff)" ( (binary_expression "((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &\n                           0x3fffffff" (binary_expression "((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29" (parenthesized_expression "((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2)" ( (binary_expression "(uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2" (call_expression "(uint)((int)pDVar16 + (-100 - (int)pDVar9))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pDVar16 + (-100 - (int)pDVar9))" ( (binary_expression "(int)pDVar16 + (-100 - (int)pDVar9)" (cast_expression "(int)pDVar16" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-100 - (int)pDVar9)" ( (binary_expression "-100 - (int)pDVar9" number_literal - (cast_expression "(int)pDVar9" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))) >> number_literal) )) * number_literal) & number_literal) )) + number_literal) ]) . field_identifier) . field_identifier)) != identifier) )) ;) })) (ERROR "pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64" (assignment_expression "pDVar55 = (this->deferred_layout_).\n                  super__Vector_base<gold" identifier = (binary_expression "(this->deferred_layout_).\n                  super__Vector_base<gold" (field_expression "(this->deferred_layout_).\n                  super__Vector_base" (parenthesized_expression "(this->deferred_layout_)" ( (field_expression "this->deferred_layout_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish;" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_finish" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (field_expression "_false>::Deferred_layout>_>\n                  ._M_impl._M_finish" (field_expression "_false>::Deferred_layout>_>\n                  ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) ;) (ERROR "pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold::Sized_relobj_file<64" (assignment_expression "pDVar74 = (this->deferred_layout_).\n                  super__Vector_base<gold" identifier = (binary_expression "(this->deferred_layout_).\n                  super__Vector_base<gold" (field_expression "(this->deferred_layout_).\n                  super__Vector_base" (parenthesized_expression "(this->deferred_layout_)" ( (field_expression "this->deferred_layout_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start;" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  ._M_impl._M_start" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (field_expression "_false>::Deferred_layout>_>\n                  ._M_impl._M_start" (field_expression "_false>::Deferred_layout>_>\n                  ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) ;) (if_statement "if (pDVar55 != pDVar74) {\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }" if (parenthesized_expression "(pDVar55 != pDVar74)" ( (binary_expression "pDVar55 != pDVar74" identifier != identifier) )) (compound_statement "{\n          do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);\n          pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;\n        }" { (do_statement "do {\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          } while (pDVar55 != pDVar74);" do (compound_statement "{\n            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;\n            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }\n            pDVar74 = pDVar74 + 1;\n          }" { (expression_statement "pcVar22 = (pDVar74->name_)._M_dataplus._M_p;" (assignment_expression "pcVar22 = (pDVar74->name_)._M_dataplus._M_p" identifier = (field_expression "(pDVar74->name_)._M_dataplus._M_p" (field_expression "(pDVar74->name_)._M_dataplus" (parenthesized_expression "(pDVar74->name_)" ( (field_expression "pDVar74->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                 *)pcVar22 != &(pDVar74->name_).field_2) {\n              operator_delete(pcVar22);\n            }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).field_2)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n                 *)pcVar22 != &(pDVar74->name_).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                 *)pcVar22 != &(pDVar74->name_).field_2" (binary_expression "allocator<char>_>_9\n                 *)pcVar22" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n                 *)pcVar22" identifier * (ERROR ")" )) identifier)) != (pointer_expression "&(pDVar74->name_).field_2" & (field_expression "(pDVar74->name_).field_2" (parenthesized_expression "(pDVar74->name_)" ( (field_expression "pDVar74->name_" identifier -> field_identifier) )) . field_identifier))) )) )) (compound_statement "{\n              operator_delete(pcVar22);\n            }" { (expression_statement "operator_delete(pcVar22);" (call_expression "operator_delete(pcVar22)" identifier (argument_list "(pcVar22)" ( identifier ))) ;) })) (expression_statement "pDVar74 = pDVar74 + 1;" (assignment_expression "pDVar74 = pDVar74 + 1" identifier = (binary_expression "pDVar74 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pDVar55 != pDVar74)" ( (binary_expression "pDVar55 != pDVar74" identifier != identifier) )) ;) (ERROR "pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold::Sized_relobj_file<64" (assignment_expression "pDVar74 = (this->deferred_layout_).\n                    super__Vector_base<gold" identifier = (binary_expression "(this->deferred_layout_).\n                    super__Vector_base<gold" (field_expression "(this->deferred_layout_).\n                    super__Vector_base" (parenthesized_expression "(this->deferred_layout_)" ( (field_expression "this->deferred_layout_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start;" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ._M_impl._M_start" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (field_expression "_false>::Deferred_layout>_>\n                    ._M_impl._M_start" (field_expression "_false>::Deferred_layout>_>\n                    ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) ;) })) (if_statement "if (pDVar74 != (pointer)0x0) {\n          operator_delete(pDVar74);\n        }" if (parenthesized_expression "(pDVar74 != (pointer)0x0)" ( (binary_expression "pDVar74 != (pointer)0x0" identifier != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) )) (compound_statement "{\n          operator_delete(pDVar74);\n        }" { (expression_statement "operator_delete(pDVar74);" (call_expression "operator_delete(pDVar74)" identifier (argument_list "(pDVar74)" ( identifier ))) ;) })) (ERROR "(this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "(this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "(this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64" (binary_expression "(this->deferred_layout_).\n        super__Vector_base<gold" (field_expression "(this->deferred_layout_).\n        super__Vector_base" (parenthesized_expression "(this->deferred_layout_)" ( (field_expression "this->deferred_layout_" identifier -> field_identifier) )) . field_identifier) < identifier) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40;" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (assignment_expression "_false>::Deferred_layout>_>\n        ._M_impl._M_start = pDVar40" (field_expression "_false>::Deferred_layout>_>\n        ._M_impl._M_start" (field_expression "_false>::Deferred_layout>_>\n        ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = identifier)) ;) (ERROR "(this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "(this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "(this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64" (binary_expression "(this->deferred_layout_).\n        super__Vector_base<gold" (field_expression "(this->deferred_layout_).\n        super__Vector_base" (parenthesized_expression "(this->deferred_layout_)" ( (field_expression "this->deferred_layout_" identifier -> field_identifier) )) . field_identifier) < identifier) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (assignment_expression "_false>::Deferred_layout>_>\n        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40)" (field_expression "_false>::Deferred_layout>_>\n        ._M_impl._M_finish" (field_expression "_false>::Deferred_layout>_>\n        ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (call_expression "(pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40)" (parenthesized_expression "(pointer)" ( identifier )) (argument_list "(((int)pDVar16 - (int)pDVar9) + (int)pDVar40)" ( (binary_expression "((int)pDVar16 - (int)pDVar9) + (int)pDVar40" (parenthesized_expression "((int)pDVar16 - (int)pDVar9)" ( (binary_expression "(int)pDVar16 - (int)pDVar9" (cast_expression "(int)pDVar16" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar9" ( (type_descriptor "int" primitive_type) ) identifier)) )) + (cast_expression "(int)pDVar40" ( (type_descriptor "int" primitive_type) ) identifier)) ))))) ;) (ERROR "(this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "(this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "(this->deferred_layout_).\n        super__Vector_base<gold::Sized_relobj_file<64" (binary_expression "(this->deferred_layout_).\n        super__Vector_base<gold" (field_expression "(this->deferred_layout_).\n        super__Vector_base" (parenthesized_expression "(this->deferred_layout_)" ( (field_expression "this->deferred_layout_" identifier -> field_identifier) )) . field_identifier) < identifier) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140;" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (assignment_expression "_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage = pDVar40 + local_140" (field_expression "_false>::Deferred_layout>_>\n        ._M_impl._M_end_of_storage" (field_expression "_false>::Deferred_layout>_>\n        ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (binary_expression "pDVar40 + local_140" identifier + identifier))) ;) })) (expression_statement "this->is_deferred_layout_ = true;" (assignment_expression "this->is_deferred_layout_ = true" (field_expression "this->is_deferred_layout_" identifier -> field_identifier) = true) ;) })) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(_Bit_type *)0x0" ( (type_descriptor "_Bit_type *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p = (_Bit_type *)0x0" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(_Bit_type *)0x0" ( (type_descriptor "_Bit_type *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = 0;" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = 0" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "uVar69 = uVar6 + 0x1f >> 5;" (assignment_expression "uVar69 = uVar6 + 0x1f >> 5" identifier = (binary_expression "uVar6 + 0x1f >> 5" (binary_expression "uVar6 + 0x1f" identifier + number_literal) >> number_literal)) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage = (_Bit_pointer)0x0;" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage = (_Bit_pointer)0x0" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(_Bit_pointer)0x0" ( (type_descriptor "_Bit_pointer" type_identifier) ) number_literal)) ;) (expression_statement "uVar63 = uVar69 * 4;" (assignment_expression "uVar63 = uVar69 * 4" identifier = (binary_expression "uVar69 * 4" identifier * number_literal)) ;) comment (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)operator_new(uVar63);" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p = (_Bit_type *)operator_new(uVar63)" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(_Bit_type *)operator_new(uVar63)" ( (type_descriptor "_Bit_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(uVar63)" identifier (argument_list "(uVar63)" ( identifier ))))) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + uVar69;" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + uVar69" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std::allocator<bool" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage =\n         omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n    _M_end_of_storage" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) = (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) + identifier) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = uVar6 & 0x1f;" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset = uVar6 & 0x1f" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_offset" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = (binary_expression "uVar6 & 0x1f" identifier & number_literal)) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + ((int)uVar6 >> 5);" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p + ((int)uVar6 >> 5)" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n         super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std::allocator<bool" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p =\n         omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.\n    super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) + (parenthesized_expression "((int)uVar6 >> 5)" ( (binary_expression "(int)uVar6 >> 5" (cast_expression "(int)uVar6" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0;" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset = 0" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base._M_offset" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n    super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "memset(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p,0,uVar63);" (call_expression "memset(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p,0,uVar63)" identifier (argument_list "(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p,0,uVar63)" ( (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) , number_literal , identifier ))) ;) (expression_statement "pGVar34 = parameters->options_;" (assignment_expression "pGVar34 = parameters->options_" identifier = (field_expression "parameters->options_" identifier -> field_identifier)) ;) (if_statement "if (pGVar34 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }" if (parenthesized_expression "(pGVar34 == (General_options *)0x0)" ( (binary_expression "pGVar34 == (General_options *)0x0" identifier == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */\n      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n    }" { comment comment (expression_statement "do_gold_unreachable("../../gold/parameters.h",0x5c,"options");" (call_expression "do_gold_unreachable("../../gold/parameters.h",0x5c,"options")" identifier (argument_list "("../../gold/parameters.h",0x5c,"options")" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""options"" " string_content ") ))) ;) })) (expression_statement "bVar4 = (pGVar34->relocatable_).value;" (assignment_expression "bVar4 = (pGVar34->relocatable_).value" identifier = (field_expression "(pGVar34->relocatable_).value" (parenthesized_expression "(pGVar34->relocatable_)" ( (field_expression "pGVar34->relocatable_" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)(uint)bVar4;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)(uint)" (field_expression "SVar49.p_" identifier . field_identifier) = (call_expression "(Shdr_data<64> *)(uint)" (parenthesized_expression "(Shdr_data<64> *)" ( (binary_expression "Shdr_data<64> *" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*" * identifier)) )) (argument_list "(uint)" ( identifier )))) (ERROR "bVar4" identifier) ;) (expression_statement "bVar3 = bVar4;" (assignment_expression "bVar3 = bVar4" identifier = identifier) ;) (if_statement "if (bVar4 == false) {\n      bVar3 = (pGVar34->emit_relocs_).value;\n    }" if (parenthesized_expression "(bVar4 == false)" ( (binary_expression "bVar4 == false" identifier == false) )) (compound_statement "{\n      bVar3 = (pGVar34->emit_relocs_).value;\n    }" { (expression_statement "bVar3 = (pGVar34->emit_relocs_).value;" (assignment_expression "bVar3 = (pGVar34->emit_relocs_).value" identifier = (field_expression "(pGVar34->emit_relocs_).value" (parenthesized_expression "(pGVar34->emit_relocs_)" ( (field_expression "pGVar34->emit_relocs_" identifier -> field_identifier) )) . field_identifier)) ;) })) (ERROR "reloc_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "reloc_sections.super__Vector_base<unsigned_int,_std" (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl._M_start\n         = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl._M_start\n         = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl._M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "reloc_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "reloc_sections.super__Vector_base<unsigned_int,_std" (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl._M_finish\n         = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl._M_finish\n         = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl._M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "reloc_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "reloc_sections.super__Vector_base<unsigned_int,_std" (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "eh_frame_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "eh_frame_sections.super__Vector_base<unsigned_int,_std" (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "eh_frame_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "eh_frame_sections.super__Vector_base<unsigned_int,_std" (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "eh_frame_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "eh_frame_sections.super__Vector_base<unsigned_int,_std" (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "debug_info_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "debug_info_sections.super__Vector_base<unsigned_int,_std" (binary_expression "debug_info_sections.super__Vector_base<unsigned_int" (field_expression "debug_info_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "debug_info_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "debug_info_sections.super__Vector_base<unsigned_int,_std" (binary_expression "debug_info_sections.super__Vector_base<unsigned_int" (field_expression "debug_info_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "debug_info_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "debug_info_sections.super__Vector_base<unsigned_int,_std" (binary_expression "debug_info_sections.super__Vector_base<unsigned_int" (field_expression "debug_info_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "debug_types_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "debug_types_sections.super__Vector_base<unsigned_int,_std" (binary_expression "debug_types_sections.super__Vector_base<unsigned_int" (field_expression "debug_types_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_start = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "debug_types_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "debug_types_sections.super__Vector_base<unsigned_int,_std" (binary_expression "debug_types_sections.super__Vector_base<unsigned_int" (field_expression "debug_types_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_finish = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "debug_types_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "debug_types_sections.super__Vector_base<unsigned_int,_std" (binary_expression "debug_types_sections.super__Vector_base<unsigned_int" (field_expression "debug_types_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage = (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n    _M_end_of_storage" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "i = 1;" (assignment_expression "i = 1" identifier = number_literal) ;) (if_statement "if (uVar6 < 2) {\n      local_16c = 0;\n      local_168 = 0;\nLAB_000a2740:\n      if (!bVar24) {\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;\n        *(Layout **)((int)piVar62 + -0x10) = layout;\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;\n        Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;\n        *(uint *)((int)piVar62 + -0x14) = local_168;\n        *(uint *)((int)piVar62 + -0x18) = local_16c;\n        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;\n        *(Layout **)((int)piVar62 + -0x20) = layout;\n        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;\n        Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));\n        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;\n      }\n      if (bVar26) {\n        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start) {\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }\n      if (bVar3 != 0) {\n        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;\n        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;\n        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0;\n        if (uVar69 == 0) {\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }\n        else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68;\n        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;\n      }\n      if (bVar25) {\n        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish) {\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n        puVar58 = debug_types_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n      }" if (parenthesized_expression "(uVar6 < 2)" ( (binary_expression "uVar6 < 2" identifier < number_literal) )) (compound_statement "{\n      local_16c = 0;\n      local_168 = 0;\nLAB_000a2740:\n      if (!bVar24) {\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;\n        *(Layout **)((int)piVar62 + -0x10) = layout;\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;\n        Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;\n        *(uint *)((int)piVar62 + -0x14) = local_168;\n        *(uint *)((int)piVar62 + -0x18) = local_16c;\n        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;\n        *(Layout **)((int)piVar62 + -0x20) = layout;\n        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;\n        Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));\n        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;\n      }\n      if (bVar26) {\n        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start) {\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }\n      if (bVar3 != 0) {\n        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;\n        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;\n        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0;\n        if (uVar69 == 0) {\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }\n        else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68;\n        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;\n      }\n      if (bVar25) {\n        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish) {\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n        puVar58 = debug_types_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }\n      }" { (expression_statement "local_16c = 0;" (assignment_expression "local_16c = 0" identifier = number_literal) ;) (expression_statement "local_168 = 0;" (assignment_expression "local_168 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000a2740:\n      if (!bVar24) {\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;\n        *(Layout **)((int)piVar62 + -0x10) = layout;\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;\n        Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;\n        *(uint *)((int)piVar62 + -0x14) = local_168;\n        *(uint *)((int)piVar62 + -0x18) = local_16c;\n        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;\n        *(Layout **)((int)piVar62 + -0x20) = layout;\n        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;\n        Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));\n        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;\n      }" statement_identifier : (if_statement "if (!bVar24) {\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;\n        *(Layout **)((int)piVar62 + -0x10) = layout;\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;\n        Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;\n        *(uint *)((int)piVar62 + -0x14) = local_168;\n        *(uint *)((int)piVar62 + -0x18) = local_16c;\n        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;\n        *(Layout **)((int)piVar62 + -0x20) = layout;\n        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;\n        Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));\n        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;\n      }" if (parenthesized_expression "(!bVar24)" ( (unary_expression "!bVar24" ! identifier) )) (compound_statement "{\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;\n        *(Layout **)((int)piVar62 + -0x10) = layout;\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;\n        Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));\n        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;\n        *(uint *)((int)piVar62 + -0x14) = local_168;\n        *(uint *)((int)piVar62 + -0x18) = local_16c;\n        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;\n        *(Layout **)((int)piVar62 + -0x20) = layout;\n        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;\n        Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));\n        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;\n      }" { (expression_statement "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;" (assignment_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this" (pointer_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc)" * (call_expression "(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(Layout **)((int)piVar62 + -0x10) = layout;" (assignment_expression "*(Layout **)((int)piVar62 + -0x10) = layout" (pointer_expression "*(Layout **)((int)piVar62 + -0x10)" * (cast_expression "(Layout **)((int)piVar62 + -0x10)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa275f" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (labeled_statement "Layout::merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));" statement_identifier : (ERROR ":" :) (expression_statement "merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));" (call_expression "merge_gnu_properties\n                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc))" identifier (argument_list "(*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc))" ( (pointer_expression "*(Layout **)((int)piVar62 + -0x10)" * (cast_expression "(Layout **)((int)piVar62 + -0x10)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(Object **)((int)piVar62 + -0xc)" * (cast_expression "(Object **)((int)piVar62 + -0xc)" ( (type_descriptor "Object **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;)) (expression_statement "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;" (assignment_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this" (pointer_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10)" * (call_expression "(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)((int)piVar62 + -0x14) = local_168;" (assignment_expression "*(uint *)((int)piVar62 + -0x14) = local_168" (pointer_expression "*(uint *)((int)piVar62 + -0x14)" * (cast_expression "(uint *)((int)piVar62 + -0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)((int)piVar62 + -0x18) = local_16c;" (assignment_expression "*(uint *)((int)piVar62 + -0x18) = local_16c" (pointer_expression "*(uint *)((int)piVar62 + -0x18)" * (cast_expression "(uint *)((int)piVar62 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x18)" ( (binary_expression "(int)piVar62 + -0x18" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)((int)piVar62 + -0x1c) = (uint)local_137;" (assignment_expression "*(uint *)((int)piVar62 + -0x1c) = (uint)local_137" (pointer_expression "*(uint *)((int)piVar62 + -0x1c)" * (cast_expression "(uint *)((int)piVar62 + -0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x1c)" ( (binary_expression "(int)piVar62 + -0x1c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (cast_expression "(uint)local_137" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*(Layout **)((int)piVar62 + -0x20) = layout;" (assignment_expression "*(Layout **)((int)piVar62 + -0x20) = layout" (pointer_expression "*(Layout **)((int)piVar62 + -0x20)" * (cast_expression "(Layout **)((int)piVar62 + -0x20)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x20)" ( (binary_expression "(int)piVar62 + -0x20" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x24) = 0xa277f" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x24)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x24)" ( (binary_expression "(int)piVar62 + -0x24" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (labeled_statement "Layout::layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));" statement_identifier : (ERROR ":" :) (expression_statement "layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));" (call_expression "layout_gnu_stack\n                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10))" identifier (argument_list "(*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),\n                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10))" ( (pointer_expression "*(Layout **)((int)piVar62 + -0x20)" * (cast_expression "(Layout **)((int)piVar62 + -0x20)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x20)" ( (binary_expression "(int)piVar62 + -0x20" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(bool *)((int)piVar62 + -0x1c)" * (cast_expression "(bool *)((int)piVar62 + -0x1c)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x1c)" ( (binary_expression "(int)piVar62 + -0x1c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(uint64_t *)((int)piVar62 + -0x18)" * (cast_expression "(uint64_t *)((int)piVar62 + -0x18)" ( (type_descriptor "uint64_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x18)" ( (binary_expression "(int)piVar62 + -0x18" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(Object **)((int)piVar62 + -0x10)" * (cast_expression "(Object **)((int)piVar62 + -0x10)" ( (type_descriptor "Object **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_02" ( (binary_expression "Shdr_data<64> *)extraout_ECX_02" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_02" * (ERROR ")" )) identifier)) ))) ;) }))) (if_statement "if (bVar26) {\n        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start) {\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }" if (parenthesized_expression "(bVar26)" ( identifier )) (compound_statement "{\n        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }" { (if_statement "if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }" if (parenthesized_expression "(eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)" ( (ERROR "eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "eh_frame_sections.super__Vector_base<unsigned_int,_std" (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : : (comma_expression "allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int,_std" (binary_expression "allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "allocator<unsigned_int>_>.\n            _M_impl._M_finish" (field_expression "allocator<unsigned_int>_>.\n            _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (field_expression "allocator<unsigned_int>_>.\n            _M_impl._M_start" (field_expression "allocator<unsigned_int>_>.\n            _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n          *(uint *)((int)piVar62 + -4) = uVar63;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }" { (expression_statement "*(uint *)((int)piVar62 + -4) = uVar63;" (assignment_expression "*(uint *)((int)piVar62 + -4) = uVar63" (pointer_expression "*(uint *)((int)piVar62 + -4)" * (cast_expression "(uint *)((int)piVar62 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -4)" ( (binary_expression "(int)piVar62 + -4" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(char **)((int)piVar62 + -8) = "do_layout";" (assignment_expression "*(char **)((int)piVar62 + -8) = "do_layout"" (pointer_expression "*(char **)((int)piVar62 + -8)" * (cast_expression "(char **)((int)piVar62 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -8)" ( (binary_expression "(int)piVar62 + -8" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (string_literal ""do_layout"" " string_content ")) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0xc) = 0x751;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0xc) = 0x751" (pointer_expression "*(undefined4 *)((int)piVar62 + -0xc)" * (cast_expression "(undefined4 *)((int)piVar62 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";" (assignment_expression "*(char **)((int)piVar62 + -0x10) = "../../gold/object.cc"" (pointer_expression "*(char **)((int)piVar62 + -0x10)" * (cast_expression "(char **)((int)piVar62 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (string_literal ""../../gold/object.cc"" " string_content ")) ;) comment (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));" (call_expression "do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8))" identifier (argument_list "(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8))" ( (pointer_expression "*(char **)((int)piVar62 + -0x10)" * (cast_expression "(char **)((int)piVar62 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(int *)((int)piVar62 + -0xc)" * (cast_expression "(int *)((int)piVar62 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(char **)((int)piVar62 + -8)" * (cast_expression "(char **)((int)piVar62 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -8)" ( (binary_expression "(int)piVar62 + -8" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) })) }) (else_clause "else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start) {\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }" else (if_statement "if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start) {\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }" if (parenthesized_expression "(eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start)" ( (ERROR "eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "eh_frame_sections.super__Vector_base<unsigned_int,_std" (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : : (comma_expression "allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int,_std" (binary_expression "allocator<unsigned_int>_>.\n               _M_impl._M_finish !=\n               eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "allocator<unsigned_int>_>.\n               _M_impl._M_finish" (field_expression "allocator<unsigned_int>_>.\n               _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (field_expression "allocator<unsigned_int>_>.\n               _M_impl._M_start" (field_expression "allocator<unsigned_int>_>.\n               _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                  _M_impl._M_start;\n        do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);\n      }" { (ERROR "puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std" (assignment_expression "puVar58 = eh_frame_sections.super__Vector_base<unsigned_int" identifier = (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>.\n                  _M_impl._M_start;" (field_expression "allocator<unsigned_int>_>.\n                  _M_impl._M_start" (field_expression "allocator<unsigned_int>_>.\n                  _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (do_statement "do {\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58);" do (compound_statement "{\n          uVar69 = *puVar58;\n          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];\n          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];\n          *(off_t **)((int)piVar62 + -0x14) = &offset;\n          *(uint *)((int)piVar62 + -0x18) = uVar69;\n          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;\n          *(File_view **)((int)piVar62 + -0x20) = local_180;\n          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;\n          *(File_view **)((int)piVar62 + -0x28) = local_164;\n          *(Layout **)((int)piVar62 + -0x2c) = layout;\n          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;\n          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);\n                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */\n          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;\n          layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));\n          puVar58 = puVar58 + 1;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;\n        }" { (expression_statement "uVar69 = *puVar58;" (assignment_expression "uVar69 = *puVar58" identifier = (pointer_expression "*puVar58" * identifier)) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];" (assignment_expression "*(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69]" (pointer_expression "*(undefined4 *)((int)piVar62 + -0xc)" * (cast_expression "(undefined4 *)((int)piVar62 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (subscript_expression "puVar31[uVar69]" identifier [ identifier ])) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69]" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x10)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (subscript_expression "puVar30[uVar69]" identifier [ identifier ])) ;) (expression_statement "*(off_t **)((int)piVar62 + -0x14) = &offset;" (assignment_expression "*(off_t **)((int)piVar62 + -0x14) = &offset" (pointer_expression "*(off_t **)((int)piVar62 + -0x14)" * (cast_expression "(off_t **)((int)piVar62 + -0x14)" ( (type_descriptor "off_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "&offset" & identifier)) ;) (expression_statement "*(uint *)((int)piVar62 + -0x18) = uVar69;" (assignment_expression "*(uint *)((int)piVar62 + -0x18) = uVar69" (pointer_expression "*(uint *)((int)piVar62 + -0x18)" * (cast_expression "(uint *)((int)piVar62 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x18)" ( (binary_expression "(int)piVar62 + -0x18" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(section_size_type *)((int)piVar62 + -0x1c) = local_188;" (assignment_expression "*(section_size_type *)((int)piVar62 + -0x1c) = local_188" (pointer_expression "*(section_size_type *)((int)piVar62 + -0x1c)" * (cast_expression "(section_size_type *)((int)piVar62 + -0x1c)" ( (type_descriptor "section_size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x1c)" ( (binary_expression "(int)piVar62 + -0x1c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(File_view **)((int)piVar62 + -0x20) = local_180;" (assignment_expression "*(File_view **)((int)piVar62 + -0x20) = local_180" (pointer_expression "*(File_view **)((int)piVar62 + -0x20)" * (cast_expression "(File_view **)((int)piVar62 + -0x20)" ( (type_descriptor "File_view **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x20)" ( (binary_expression "(int)piVar62 + -0x20" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(section_size_type *)((int)piVar62 + -0x24) = local_17c;" (assignment_expression "*(section_size_type *)((int)piVar62 + -0x24) = local_17c" (pointer_expression "*(section_size_type *)((int)piVar62 + -0x24)" * (cast_expression "(section_size_type *)((int)piVar62 + -0x24)" ( (type_descriptor "section_size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x24)" ( (binary_expression "(int)piVar62 + -0x24" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(File_view **)((int)piVar62 + -0x28) = local_164;" (assignment_expression "*(File_view **)((int)piVar62 + -0x28) = local_164" (pointer_expression "*(File_view **)((int)piVar62 + -0x28)" * (cast_expression "(File_view **)((int)piVar62 + -0x28)" ( (type_descriptor "File_view **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x28)" ( (binary_expression "(int)piVar62 + -0x28" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(Layout **)((int)piVar62 + -0x2c) = layout;" (assignment_expression "*(Layout **)((int)piVar62 + -0x2c) = layout" (pointer_expression "*(Layout **)((int)piVar62 + -0x2c)" * (cast_expression "(Layout **)((int)piVar62 + -0x2c)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x2c)" ( (binary_expression "(int)piVar62 + -0x2c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;" (assignment_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this" (pointer_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30)" * (call_expression "(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x30)" ( (binary_expression "(int)piVar62 + -0x30" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);" (assignment_expression "offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40)" (field_expression "offset._0_4_" identifier . field_identifier) = (call_expression "(Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40)" (parenthesized_expression "(Sized_relobj_file<64,_false> *)" ( (comma_expression "Sized_relobj_file<64,_false> *" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "(local_160 + uVar69 * 0x40)" ( (binary_expression "local_160 + uVar69 * 0x40" identifier + (binary_expression "uVar69 * 0x40" identifier * number_literal)) )))) ;) comment (expression_statement "*(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x34) = 0xa374f" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x34)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x34)" ( (binary_expression "(int)piVar62 + -0x34" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc));" (call_expression "layout_eh_frame_section\n                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc))" identifier (argument_list "(*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),\n                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),\n                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),\n                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),\n                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),\n                     *(uint *)((int)piVar62 + -0xc))" ( (pointer_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30)" * (call_expression "(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x30)" ( (binary_expression "(int)piVar62 + -0x30" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(Layout **)((int)piVar62 + -0x2c)" * (cast_expression "(Layout **)((int)piVar62 + -0x2c)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x2c)" ( (binary_expression "(int)piVar62 + -0x2c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(uchar **)((int)piVar62 + -0x28)" * (cast_expression "(uchar **)((int)piVar62 + -0x28)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x28)" ( (binary_expression "(int)piVar62 + -0x28" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(section_size_type *)((int)piVar62 + -0x24)" * (cast_expression "(section_size_type *)((int)piVar62 + -0x24)" ( (type_descriptor "section_size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x24)" ( (binary_expression "(int)piVar62 + -0x24" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(uchar **)((int)piVar62 + -0x20)" * (cast_expression "(uchar **)((int)piVar62 + -0x20)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x20)" ( (binary_expression "(int)piVar62 + -0x20" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(section_size_type *)((int)piVar62 + -0x1c)" * (cast_expression "(section_size_type *)((int)piVar62 + -0x1c)" ( (type_descriptor "section_size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x1c)" ( (binary_expression "(int)piVar62 + -0x1c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(uint *)((int)piVar62 + -0x18)" * (cast_expression "(uint *)((int)piVar62 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x18)" ( (binary_expression "(int)piVar62 + -0x18" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(Shdr **)((int)piVar62 + -0x14)" * (cast_expression "(Shdr **)((int)piVar62 + -0x14)" ( (type_descriptor "Shdr **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(uint *)((int)piVar62 + -0x10)" * (cast_expression "(uint *)((int)piVar62 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(uint *)((int)piVar62 + -0xc)" * (cast_expression "(uint *)((int)piVar62 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) (expression_statement "puVar58 = puVar58 + 1;" (assignment_expression "puVar58 = puVar58 + 1" identifier = (binary_expression "puVar58 + 1" identifier + number_literal)) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_13" ( (binary_expression "Shdr_data<64> *)extraout_ECX_13" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_13" * (ERROR ")" )) identifier)) ))) ;) }) while (parenthesized_expression "(eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58)" ( (ERROR "eh_frame_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "eh_frame_sections.super__Vector_base<unsigned_int,_std" (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (binary_expression "allocator<unsigned_int>_>.\n                 _M_impl._M_finish != puVar58" (field_expression "allocator<unsigned_int>_>.\n                 _M_impl._M_finish" (field_expression "allocator<unsigned_int>_>.\n                 _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != identifier) )) ;) })))) (if_statement "if (bVar3 != 0) {\n        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;\n        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;\n        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0;\n        if (uVar69 == 0) {\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }\n        else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68;\n        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;\n      }" if (parenthesized_expression "(bVar3 != 0)" ( (binary_expression "bVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;\n        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;\n                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */\n        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;\n        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0;\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0;\n        if (uVar69 == 0) {\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }\n        else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68;\n        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;\n      }" { (expression_statement "uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;" (assignment_expression "uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_" identifier = (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x10) = 0xc;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x10) = 0xc" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x10)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0;" (assignment_expression "pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0" identifier = (assignment_expression "(vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start = (pointer)0x0" (field_expression "(vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_start" (field_expression "(vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl" (parenthesized_expression "(vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)" ( (ERROR "vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::" (binary_expression "vector<gold" identifier < identifier) : : (type_descriptor "Relocatable_relocs*" type_identifier (abstract_pointer_declarator "*" *)) , identifier : : (binary_expression "allocator<gold" identifier < identifier) : : (comma_expression "Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10));\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std" (binary_expression "Relocatable_relocs*>_> *)\n                  operator_new(*(uint *)((int)piVar62 + -0x10))" (binary_expression "Relocatable_relocs*>_" identifier * (ERROR ">" >) identifier) > (pointer_expression "*)\n                  operator_new(*(uint *)((int)piVar62 + -0x10))" * (ERROR ")" )) (call_expression "operator_new(*(uint *)((int)piVar62 + -0x10))" identifier (argument_list "(*(uint *)((int)piVar62 + -0x10))" ( (pointer_expression "*(uint *)((int)piVar62 + -0x10)" * (cast_expression "(uint *)((int)piVar62 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) (ERROR ";\n        (pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*" ; ( (binary_expression "pvVar46->\n        super__Vector_base<gold" (field_expression "pvVar46->\n        super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) *) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (binary_expression "Relocatable_relocs*>_>" (binary_expression "Relocatable_relocs*>_" identifier * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal))) ;) (expression_statement "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0;" (assignment_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = (pointer)0x0" (field_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish" (field_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl" (parenthesized_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)" ( (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>" (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_" (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold" (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std" (binary_expression "pvVar46->\n        super__Vector_base<gold" (field_expression "pvVar46->\n        super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0;" (assignment_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage = (pointer)0x0" (field_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_end_of_storage" (field_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl" (parenthesized_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)" ( (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>" (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_" (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold" (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std" (binary_expression "pvVar46->\n        super__Vector_base<gold" (field_expression "pvVar46->\n        super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (if_statement "if (uVar69 == 0) {\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }\n        else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }" if (parenthesized_expression "(uVar69 == 0)" ( (binary_expression "uVar69 == 0" identifier == number_literal) )) (compound_statement "{\n          ppRVar68 = (pointer)0x0;\n          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;\n        }" { (expression_statement "ppRVar68 = (pointer)0x0;" (assignment_expression "ppRVar68 = (pointer)0x0" identifier = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_27" ( (binary_expression "Shdr_data<64> *)extraout_ECX_27" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_27" * (ERROR ")" )) identifier)) ))) ;) }) (else_clause "else {\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }" else (compound_statement "{\n          if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }\n          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;\n                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;\n          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));\n          ppRVar68 = ppRVar47 + uVar69;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;\n          (pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;\n          do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);\n        }" { (if_statement "if (0x3fffffff < uVar69) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }" if (parenthesized_expression "(0x3fffffff < uVar69)" ( (binary_expression "0x3fffffff < uVar69" number_literal < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */\n            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;\n            std::__throw_bad_alloc();\n          }" { comment comment (expression_statement "*(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;" (assignment_expression "*(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530" (pointer_expression "*(undefined1 **)((int)piVar62 + -4)" * (cast_expression "(undefined1 **)((int)piVar62 + -4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -4)" ( (binary_expression "(int)piVar62 + -4" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "&LAB_000a4530" & identifier)) ;) (labeled_statement "std::__throw_bad_alloc();" statement_identifier : (ERROR ":" :) (expression_statement "__throw_bad_alloc();" (call_expression "__throw_bad_alloc()" identifier (argument_list "()" ( ))) ;)) })) (expression_statement "*(uint *)((int)piVar62 + -0x10) = uVar69 * 4;" (assignment_expression "*(uint *)((int)piVar62 + -0x10) = uVar69 * 4" (pointer_expression "*(uint *)((int)piVar62 + -0x10)" * (cast_expression "(uint *)((int)piVar62 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "uVar69 * 4" identifier * number_literal)) ;) comment (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa4212" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));" (assignment_expression "ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10))" identifier = (cast_expression "(pointer)operator_new(*(uint *)((int)piVar62 + -0x10))" ( (type_descriptor "pointer" type_identifier) ) (call_expression "operator_new(*(uint *)((int)piVar62 + -0x10))" identifier (argument_list "(*(uint *)((int)piVar62 + -0x10))" ( (pointer_expression "*(uint *)((int)piVar62 + -0x10)" * (cast_expression "(uint *)((int)piVar62 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (expression_statement "ppRVar68 = ppRVar47 + uVar69;" (assignment_expression "ppRVar68 = ppRVar47 + uVar69" identifier = (binary_expression "ppRVar47 + uVar69" identifier + identifier)) ;) (expression_statement "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47;" (assignment_expression "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start = ppRVar47" (field_expression "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_start" (field_expression "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl" (parenthesized_expression "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)" ( (binary_expression "pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>" (binary_expression "pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_" (binary_expression "pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold" (binary_expression "pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std" (binary_expression "pvVar46->\n          super__Vector_base<gold" (field_expression "pvVar46->\n          super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier) = identifier) ;) (expression_statement "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68;" (assignment_expression "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage = ppRVar68" (field_expression "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl._M_end_of_storage" (field_expression "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)\n          ._M_impl" (parenthesized_expression "(pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)" ( (binary_expression "pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>" (binary_expression "pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_" (binary_expression "pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold" (binary_expression "pvVar46->\n          super__Vector_base<gold::Relocatable_relocs*,_std" (binary_expression "pvVar46->\n          super__Vector_base<gold" (field_expression "pvVar46->\n          super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier) = identifier) ;) (do_statement "do {\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          } while (ppRVar68 != ppRVar47);" do (compound_statement "{\n            *ppRVar47 = (Relocatable_relocs *)0x0;\n            ppRVar47 = ppRVar47 + 1;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;\n          }" { (expression_statement "*ppRVar47 = (Relocatable_relocs *)0x0;" (assignment_expression "*ppRVar47 = (Relocatable_relocs *)0x0" (pointer_expression "*ppRVar47" * identifier) = (cast_expression "(Relocatable_relocs *)0x0" ( (type_descriptor "Relocatable_relocs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppRVar47 = ppRVar47 + 1;" (assignment_expression "ppRVar47 = ppRVar47 + 1" identifier = (binary_expression "ppRVar47 + 1" identifier + number_literal)) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_28" ( (binary_expression "Shdr_data<64> *)extraout_ECX_28" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_28" * (ERROR ")" )) identifier)) ))) ;) }) while (parenthesized_expression "(ppRVar68 != ppRVar47)" ( (binary_expression "ppRVar68 != ppRVar47" identifier != identifier) )) ;) }))) (expression_statement "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68;" (assignment_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish = ppRVar68" (field_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl._M_finish" (field_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).\n        _M_impl" (parenthesized_expression "(pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)" ( (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>" (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_" (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold" (binary_expression "pvVar46->\n        super__Vector_base<gold::Relocatable_relocs*,_std" (binary_expression "pvVar46->\n        super__Vector_base<gold" (field_expression "pvVar46->\n        super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier) = identifier) ;) (expression_statement "(this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;" (assignment_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) = identifier) ;) })) (if_statement "if (bVar25) {\n        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish) {\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\n        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }" { (if_statement "if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }" if (parenthesized_expression "(reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_finish)" ( (ERROR "reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "reloc_sections.super__Vector_base<unsigned_int,_std" (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : : (comma_expression "allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int,_std" (binary_expression "allocator<unsigned_int>_>._M_impl.\n            _M_start !=\n            reloc_sections.super__Vector_base<unsigned_int" (field_expression "allocator<unsigned_int>_>._M_impl.\n            _M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (field_expression "allocator<unsigned_int>_>._M_impl.\n            _M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }" { (expression_statement "*(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;" (assignment_expression "*(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_" (pointer_expression "*(Shdr_data<64> **)((int)piVar62 + -4)" * (call_expression "(Shdr_data<64> **)((int)piVar62 + -4)" (parenthesized_expression "(Shdr_data<64> **)" ( (binary_expression "Shdr_data<64> **" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "**" * (pointer_expression "*" * identifier))) )) (argument_list "((int)piVar62 + -4)" ( (binary_expression "(int)piVar62 + -4" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "SVar49.p_" identifier . field_identifier)) ;) (expression_statement "*(char **)((int)piVar62 + -8) = "do_layout";" (assignment_expression "*(char **)((int)piVar62 + -8) = "do_layout"" (pointer_expression "*(char **)((int)piVar62 + -8)" * (cast_expression "(char **)((int)piVar62 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -8)" ( (binary_expression "(int)piVar62 + -8" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (string_literal ""do_layout"" " string_content ")) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0xc) = 0x76c;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0xc) = 0x76c" (pointer_expression "*(undefined4 *)((int)piVar62 + -0xc)" * (cast_expression "(undefined4 *)((int)piVar62 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";" (assignment_expression "*(char **)((int)piVar62 + -0x10) = "../../gold/object.cc"" (pointer_expression "*(char **)((int)piVar62 + -0x10)" * (cast_expression "(char **)((int)piVar62 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (string_literal ""../../gold/object.cc"" " string_content ")) ;) comment (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa4525" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));" (call_expression "do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8))" identifier (argument_list "(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8))" ( (pointer_expression "*(char **)((int)piVar62 + -0x10)" * (cast_expression "(char **)((int)piVar62 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(int *)((int)piVar62 + -0xc)" * (cast_expression "(int *)((int)piVar62 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(char **)((int)piVar62 + -8)" * (cast_expression "(char **)((int)piVar62 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -8)" ( (binary_expression "(int)piVar62 + -8" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) })) }) (else_clause "else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish) {\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }" else (if_statement "if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish) {\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }" if (parenthesized_expression "(reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish)" ( (ERROR "reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "reloc_sections.super__Vector_base<unsigned_int,_std" (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : : (comma_expression "allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int,_std" (binary_expression "allocator<unsigned_int>_>.\n               _M_impl._M_start !=\n               reloc_sections.super__Vector_base<unsigned_int" (field_expression "allocator<unsigned_int>_>.\n               _M_impl._M_start" (field_expression "allocator<unsigned_int>_>.\n               _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (field_expression "allocator<unsigned_int>_>.\n               _M_impl._M_finish" (field_expression "allocator<unsigned_int>_>.\n               _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                    _M_impl._M_start;\n        do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }" { (ERROR "local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "local_12c = reloc_sections.super__Vector_base<unsigned_int,_std" (assignment_expression "local_12c = reloc_sections.super__Vector_base<unsigned_int" identifier = (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>.\n                    _M_impl._M_start;" (field_expression "allocator<unsigned_int>_>.\n                    _M_impl._M_start" (field_expression "allocator<unsigned_int>_>.\n                    _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (do_statement "do {\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }\n      if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);" do (compound_statement "{\n          uVar69 = *local_12c;\n          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);\n          uVar63 = pSVar67->sh_info;\n          shdr_2.p_ = pSVar67;\n          if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }\n          if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);\n      }" { (expression_statement "uVar69 = *local_12c;" (assignment_expression "uVar69 = *local_12c" identifier = (pointer_expression "*local_12c" * identifier)) ;) (expression_statement "pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);" (assignment_expression "pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40)" identifier = (call_expression "(Shdr_data<64> *)(local_160 + uVar69 * 0x40)" (parenthesized_expression "(Shdr_data<64> *)" ( (binary_expression "Shdr_data<64> *" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*" * identifier)) )) (argument_list "(local_160 + uVar69 * 0x40)" ( (binary_expression "local_160 + uVar69 * 0x40" identifier + (binary_expression "uVar69 * 0x40" identifier * number_literal)) )))) ;) (expression_statement "uVar63 = pSVar67->sh_info;" (assignment_expression "uVar63 = pSVar67->sh_info" identifier = (field_expression "pSVar67->sh_info" identifier -> field_identifier)) ;) (expression_statement "shdr_2.p_ = pSVar67;" (assignment_expression "shdr_2.p_ = pSVar67" (field_expression "shdr_2.p_" identifier . field_identifier) = identifier) ;) (if_statement "if (0xfeff < uVar63) {\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }" if (parenthesized_expression "(0xfeff < uVar63)" ( (binary_expression "0xfeff < uVar63" number_literal < identifier) )) (compound_statement "{\n            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;\n            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;\n            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));\n            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;\n            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;\n          }" { (expression_statement "*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;" (assignment_expression "*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_" (pointer_expression "*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10)" * (call_expression "(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10)" (parenthesized_expression "(Elf_file<64,_false,_gold::Object> **)" ( (ERROR "Elf_file<64,_false,_gold::" (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : :) (binary_expression "Object> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier))) )) (argument_list "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "&this->elf_file_" & (field_expression "this->elf_file_" identifier -> field_identifier))) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (labeled_statement "elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));" statement_identifier (ERROR "::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                      (*(Elf_file<64,_false,_gold:" : : (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : : identifier > : : identifier ( * ( (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) :) : (expression_statement "Object> **)((int)piVar62 + -0x10));" (binary_expression "Object> **)((int)piVar62 + -0x10" identifier > (binary_expression "**)((int)piVar62 + -0x10" (pointer_expression "**)((int)piVar62" * (pointer_expression "*)((int)piVar62" * (ERROR ")((int)" ) ( ( primitive_type )) identifier)) + number_literal)) (ERROR "))" ) )) ;)) (expression_statement "uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;" (assignment_expression "uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_" identifier = (binary_expression "uVar63 + (this->elf_file_).large_shndx_offset_" identifier + (field_expression "(this->elf_file_).large_shndx_offset_" (parenthesized_expression "(this->elf_file_)" ( (field_expression "this->elf_file_" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_17" ( (binary_expression "Shdr_data<64> *)extraout_ECX_17" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_17" * (ERROR ")" )) identifier)) ))) ;) })) (if_statement "if (uVar63 < uVar6) {\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        }" if (parenthesized_expression "(uVar63 < uVar6)" ( (binary_expression "uVar63 < uVar6" identifier < identifier) )) (compound_statement "{\n            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;\n            pOVar44 = ppOVar17[uVar63];\n            if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }\n          local_12c = local_12c + 1;\n        }" { (expression_statement "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start;" (field_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl._M_start" (field_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                       ._M_impl" (binary_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold::Output_section*,_std" (assignment_expression "ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base<gold" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                       super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier)) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "pOVar44 = ppOVar17[uVar63];" (assignment_expression "pOVar44 = ppOVar17[uVar63]" identifier = (subscript_expression "ppOVar17[uVar63]" identifier [ identifier ])) ;) (if_statement "if (pOVar44 == (Output_section *)0x2) {\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }" if (parenthesized_expression "(pOVar44 == (Output_section *)0x2)" ( (binary_expression "pOVar44 == (Output_section *)0x2" identifier == (cast_expression "(Output_section *)0x2" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }\n          }" { (if_statement "if (!bVar24) {\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }\n            else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }" if (parenthesized_expression "(!bVar24)" ( (unary_expression "!bVar24" ! identifier) )) (compound_statement "{\n                puVar56 = local_144 + (shdr_2.p_)->sh_name;\n                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;\n                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                puVar45 = (uchar *)0xffffffff;\n                if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }\n                *(undefined4 *)((int)piVar62 + -4) = 0;\n                *(uchar **)((int)piVar62 + -8) = puVar45;\n                *(uchar **)((int)piVar62 + -0xc) = puVar56;\n                *(off_t **)((int)piVar62 + -0x10) = &offset;\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;\n                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                _M_construct<char_const*>();\n                local_6c = uVar69;\n                local_68 = 0;\n                local_64 = 0;\n                local_60 = (Input_file *)pSVar67->sh_name;\n                local_58 = (int)pSVar67->sh_flags;\n                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);\n                local_50 = *(undefined4 *)&pSVar67->sh_addr;\n                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);\n                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;\n                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);\n                local_40 = *(pointer *)&pSVar67->sh_size;\n                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);\n                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);\n                *(off_t **)((int)piVar62 + -0xc) = &offset;\n                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;\n                local_24 = puVar19;\n                local_5c = pSVar5;\n                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;\n                std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;\n                if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n            }" { (expression_statement "puVar56 = local_144 + (shdr_2.p_)->sh_name;" (assignment_expression "puVar56 = local_144 + (shdr_2.p_)->sh_name" identifier = (binary_expression "local_144 + (shdr_2.p_)->sh_name" identifier + (field_expression "(shdr_2.p_)->sh_name" (parenthesized_expression "(shdr_2.p_)" ( (field_expression "shdr_2.p_" identifier . field_identifier) )) -> field_identifier))) ;) (expression_statement "pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;" (assignment_expression "pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type" identifier = (field_expression "(Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type" (call_expression "(Sized_relobj_file<64,_false> *)(shdr_2.p_)" (parenthesized_expression "(Sized_relobj_file<64,_false> *)" ( (comma_expression "Sized_relobj_file<64,_false> *" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "(shdr_2.p_)" ( (field_expression "shdr_2.p_" identifier . field_identifier) ))) -> field_identifier)) ;) (expression_statement "offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;" (assignment_expression "offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84" (field_expression "offset._0_4_" identifier . field_identifier) = (binary_expression "(Sized_relobj_file<64,_false> *)&stack0xffffff84" (parenthesized_expression "(Sized_relobj_file<64,_false> *)" ( (comma_expression "Sized_relobj_file<64,_false> *" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) & identifier)) ;) (expression_statement "puVar45 = (uchar *)0xffffffff;" (assignment_expression "puVar45 = (uchar *)0xffffffff" identifier = (cast_expression "(uchar *)0xffffffff" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (puVar56 != (uchar *)0x0) {\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }" if (parenthesized_expression "(puVar56 != (uchar *)0x0)" ( (binary_expression "puVar56 != (uchar *)0x0" identifier != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  *(uchar **)((int)piVar62 + -0x10) = puVar56;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;\n                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));\n                  puVar45 = puVar56 + sVar33;\n                }" { (expression_statement "*(uchar **)((int)piVar62 + -0x10) = puVar56;" (assignment_expression "*(uchar **)((int)piVar62 + -0x10) = puVar56" (pointer_expression "*(uchar **)((int)piVar62 + -0x10)" * (cast_expression "(uchar **)((int)piVar62 + -0x10)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "sVar33 = strlen(*(char **)((int)piVar62 + -0x10));" (assignment_expression "sVar33 = strlen(*(char **)((int)piVar62 + -0x10))" identifier = (call_expression "strlen(*(char **)((int)piVar62 + -0x10))" identifier (argument_list "(*(char **)((int)piVar62 + -0x10))" ( (pointer_expression "*(char **)((int)piVar62 + -0x10)" * (cast_expression "(char **)((int)piVar62 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) )))) ;) (expression_statement "puVar45 = puVar56 + sVar33;" (assignment_expression "puVar45 = puVar56 + sVar33" identifier = (binary_expression "puVar56 + sVar33" identifier + identifier)) ;) })) (expression_statement "*(undefined4 *)((int)piVar62 + -4) = 0;" (assignment_expression "*(undefined4 *)((int)piVar62 + -4) = 0" (pointer_expression "*(undefined4 *)((int)piVar62 + -4)" * (cast_expression "(undefined4 *)((int)piVar62 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -4)" ( (binary_expression "(int)piVar62 + -4" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(uchar **)((int)piVar62 + -8) = puVar45;" (assignment_expression "*(uchar **)((int)piVar62 + -8) = puVar45" (pointer_expression "*(uchar **)((int)piVar62 + -8)" * (cast_expression "(uchar **)((int)piVar62 + -8)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -8)" ( (binary_expression "(int)piVar62 + -8" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(uchar **)((int)piVar62 + -0xc) = puVar56;" (assignment_expression "*(uchar **)((int)piVar62 + -0xc) = puVar56" (pointer_expression "*(uchar **)((int)piVar62 + -0xc)" * (cast_expression "(uchar **)((int)piVar62 + -0xc)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(off_t **)((int)piVar62 + -0x10) = &offset;" (assignment_expression "*(off_t **)((int)piVar62 + -0x10) = &offset" (pointer_expression "*(off_t **)((int)piVar62 + -0x10)" * (cast_expression "(off_t **)((int)piVar62 + -0x10)" ( (type_descriptor "off_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "&offset" & identifier)) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (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 "local_6c = uVar69;" (assignment_expression "local_6c = uVar69" identifier = identifier) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "local_64 = 0;" (assignment_expression "local_64 = 0" identifier = number_literal) ;) (expression_statement "local_60 = (Input_file *)pSVar67->sh_name;" (assignment_expression "local_60 = (Input_file *)pSVar67->sh_name" identifier = (cast_expression "(Input_file *)pSVar67->sh_name" ( (type_descriptor "Input_file *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pSVar67->sh_name" identifier -> field_identifier))) ;) (expression_statement "local_58 = (int)pSVar67->sh_flags;" (assignment_expression "local_58 = (int)pSVar67->sh_flags" identifier = (cast_expression "(int)pSVar67->sh_flags" ( (type_descriptor "int" primitive_type) ) (field_expression "pSVar67->sh_flags" identifier -> field_identifier))) ;) (expression_statement "local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);" (assignment_expression "local_54 = *(uint *)((int)&pSVar67->sh_flags + 4)" identifier = (pointer_expression "*(uint *)((int)&pSVar67->sh_flags + 4)" * (cast_expression "(uint *)((int)&pSVar67->sh_flags + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pSVar67->sh_flags + 4)" ( (binary_expression "(int)&pSVar67->sh_flags + 4" (cast_expression "(int)&pSVar67->sh_flags" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pSVar67->sh_flags" & (field_expression "pSVar67->sh_flags" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_50 = *(undefined4 *)&pSVar67->sh_addr;" (assignment_expression "local_50 = *(undefined4 *)&pSVar67->sh_addr" identifier = (pointer_expression "*(undefined4 *)&pSVar67->sh_addr" * (cast_expression "(undefined4 *)&pSVar67->sh_addr" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pSVar67->sh_addr" & (field_expression "pSVar67->sh_addr" identifier -> field_identifier))))) ;) (expression_statement "local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);" (assignment_expression "local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4)" identifier = (pointer_expression "*(Xindex **)((int)&pSVar67->sh_addr + 4)" * (cast_expression "(Xindex **)((int)&pSVar67->sh_addr + 4)" ( (type_descriptor "Xindex **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pSVar67->sh_addr + 4)" ( (binary_expression "(int)&pSVar67->sh_addr + 4" (cast_expression "(int)&pSVar67->sh_addr" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pSVar67->sh_addr" & (field_expression "pSVar67->sh_addr" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;" (assignment_expression "local_48 = *(Compressed_section_map **)&pSVar67->sh_offset" identifier = (pointer_expression "*(Compressed_section_map **)&pSVar67->sh_offset" * (cast_expression "(Compressed_section_map **)&pSVar67->sh_offset" ( (type_descriptor "Compressed_section_map **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pSVar67->sh_offset" & (field_expression "pSVar67->sh_offset" identifier -> field_identifier))))) ;) (expression_statement "local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);" (assignment_expression "local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4)" identifier = (pointer_expression "*(pointer *)((int)&pSVar67->sh_offset + 4)" * (cast_expression "(pointer *)((int)&pSVar67->sh_offset + 4)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pSVar67->sh_offset + 4)" ( (binary_expression "(int)&pSVar67->sh_offset + 4" (cast_expression "(int)&pSVar67->sh_offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pSVar67->sh_offset" & (field_expression "pSVar67->sh_offset" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_40 = *(pointer *)&pSVar67->sh_size;" (assignment_expression "local_40 = *(pointer *)&pSVar67->sh_size" identifier = (pointer_expression "*(pointer *)&pSVar67->sh_size" * (cast_expression "(pointer *)&pSVar67->sh_size" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pSVar67->sh_size" & (field_expression "pSVar67->sh_size" identifier -> field_identifier))))) ;) (expression_statement "local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);" (assignment_expression "local_3c = *(pointer *)((int)&pSVar67->sh_size + 4)" identifier = (pointer_expression "*(pointer *)((int)&pSVar67->sh_size + 4)" * (cast_expression "(pointer *)((int)&pSVar67->sh_size + 4)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pSVar67->sh_size + 4)" ( (binary_expression "(int)&pSVar67->sh_size + 4" (cast_expression "(int)&pSVar67->sh_size" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pSVar67->sh_size" & (field_expression "pSVar67->sh_size" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);" (assignment_expression "local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4)" identifier = (parenthesized_expression "(vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;\n                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4)" ( (ERROR "vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                            *)pSVar67->sh_link;\n                local_34 = (Object_merge_map *)pSVar67->sh_info;\n                local_30 = *(undefined4 *)&pSVar67->sh_addralign;\n                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);\n                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;" (binary_expression "vector<gold" identifier < identifier) : : (type_descriptor "Relocatable_relocs*" type_identifier (abstract_pointer_declarator "*" *)) , identifier : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Relocatable_relocs*>_>\n                            *)pSVar67->sh_link" (binary_expression "Relocatable_relocs*>_" identifier * (ERROR ">" >) identifier) > (pointer_expression "*)pSVar67->sh_link" * (ERROR ")" )) (field_expression "pSVar67->sh_link" identifier -> field_identifier))) ; (assignment_expression "local_34 = (Object_merge_map *)pSVar67->sh_info" identifier = (cast_expression "(Object_merge_map *)pSVar67->sh_info" ( (type_descriptor "Object_merge_map *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pSVar67->sh_info" identifier -> field_identifier))) ; (assignment_expression "local_30 = *(undefined4 *)&pSVar67->sh_addralign" identifier = (pointer_expression "*(undefined4 *)&pSVar67->sh_addralign" * (cast_expression "(undefined4 *)&pSVar67->sh_addralign" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pSVar67->sh_addralign" & (field_expression "pSVar67->sh_addralign" identifier -> field_identifier))))) ; (assignment_expression "local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4)" identifier = (pointer_expression "*(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4)" * (cast_expression "(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4)" ( (type_descriptor "Read_relocs_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pSVar67->sh_addralign + 4)" ( (binary_expression "(int)&pSVar67->sh_addralign + 4" (cast_expression "(int)&pSVar67->sh_addralign" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pSVar67->sh_addralign" & (field_expression "pSVar67->sh_addralign" identifier -> field_identifier))) + number_literal) ))))) ; (assignment_expression "local_28 = *(Symbols_data **)&pSVar67->sh_entsize" identifier = (pointer_expression "*(Symbols_data **)&pSVar67->sh_entsize" * (cast_expression "(Symbols_data **)&pSVar67->sh_entsize" ( (type_descriptor "Symbols_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pSVar67->sh_entsize" & (field_expression "pSVar67->sh_entsize" identifier -> field_identifier))))) ;) (assignment_expression "puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4)" identifier = (pointer_expression "*(uint **)((int)&pSVar67->sh_entsize + 4)" * (cast_expression "(uint **)((int)&pSVar67->sh_entsize + 4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&pSVar67->sh_entsize + 4)" ( (binary_expression "(int)&pSVar67->sh_entsize + 4" (cast_expression "(int)&pSVar67->sh_entsize" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pSVar67->sh_entsize" & (field_expression "pSVar67->sh_entsize" identifier -> field_identifier))) + number_literal) ))))) ))) ;) (expression_statement "*(off_t **)((int)piVar62 + -0xc) = &offset;" (assignment_expression "*(off_t **)((int)piVar62 + -0xc) = &offset" (pointer_expression "*(off_t **)((int)piVar62 + -0xc)" * (cast_expression "(off_t **)((int)piVar62 + -0xc)" ( (type_descriptor "off_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "&offset" & identifier)) ;) (expression_statement "*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;" (assignment_expression "*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_" (pointer_expression "*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10)" * (call_expression "(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)((int)piVar62 + -0x10)" (parenthesized_expression "(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **)" ( (ERROR "vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                  **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>_>\n                  **" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "&this->deferred_layout_relocs_" & (field_expression "this->deferred_layout_relocs_" identifier -> field_identifier))) ;) (expression_statement "local_24 = puVar19;" (assignment_expression "local_24 = puVar19" identifier = identifier) ;) (expression_statement "local_5c = pSVar5;" (assignment_expression "local_5c = pSVar5" identifier = identifier) ;) comment (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (labeled_statement "std::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));" statement_identifier (ERROR "::\n                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                ::emplace_back<gold" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>_>\n                ::emplace_back<gold" (binary_expression "_false>::Deferred_layout>_>\n                ::emplace_back" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) > (ERROR "::" : :) identifier) < identifier)) :) : (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc))" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>\n                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc))" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > (parenthesized_expression "(*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc))" ( (comma_expression "*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc)" (pointer_expression "*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10)" * (call_expression "(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)((int)piVar62 + -0x10)" (parenthesized_expression "(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **)" ( (ERROR "vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>_>\n                             **" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(Deferred_layout **)((int)piVar62 + -0xc)" * (cast_expression "(Deferred_layout **)((int)piVar62 + -0xc)" ( (type_descriptor "Deferred_layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) )))) ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_18" ( (binary_expression "Shdr_data<64> *)extraout_ECX_18" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_18" * (ERROR ")" )) identifier)) ))) ;) (if_statement "if ((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;" if (parenthesized_expression "((Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff" ( (assignment_expression "(Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff" (call_expression "(Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4)" (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)" ( (comma_expression "Sized_relobj_file<64,_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset !=\n                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff" (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier)) != (binary_expression "(Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff" (parenthesized_expression "(Sized_relobj_file<64,_false> *)&stack0xffffff84)" ( (comma_expression "Sized_relobj_file<64,_false> *)&stack0xffffff84" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)&stack0xffffff84" identifier > (pointer_expression "*)&stack0xffffff84" * (ERROR ")" )) (pointer_expression "&stack0xffffff84" & identifier)))) )) (ERROR "{" {) * (assignment_expression "(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =\n                       (Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff" (call_expression "(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) = (assignment_expression "(Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff" (call_expression "(Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69)" (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)" ( (ERROR "Sized_relobj_file<64,_false> *)offset;\n                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;\n                  operator_delete(*(void **)((int)piVar62 + -0x10));" (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) ; (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ; (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) (comma_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std" (binary_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int" (field_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base" (field_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_" (call_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0;\n              puVar18 = (this->super_Sized_relobj<64,_false>)" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69] = (Output_section *)0x0" (subscript_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0) {\n              ppOVar17[uVar69]" (call_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              }\n            }\n            else if (pOVar44 == (Output_section *)0x0)" (binary_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff" (field_expression "SVar49.p_" identifier . field_identifier) = (assignment_expression "(Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff" (call_expression "(Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)(puVar18 + uVar69)" (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *)" ( (comma_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int,_std" (binary_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base<long_long_unsigned_int" (field_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                          super__Vector_base" (field_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_" (call_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2;\n                puVar18 = (this->super_Sized_relobj<64,_false>)" (assignment_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69] = (Output_section *)0x2" (subscript_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start[uVar69]" (field_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl._M_start" (field_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n                _M_impl" (binary_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold::Output_section*,_std" (binary_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base<gold" (field_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                super__Vector_base" (field_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>).super_Relobj" (call_expression "Shdr_data<64> *)extraout_ECX_19;\n                }\n                (this->super_Sized_relobj<64,_false>)" (binary_expression "Shdr_data<64> *)extraout_ECX_19" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_19" * (ERROR ")" )) identifier)) (ERROR ";\n                }" ; }) (argument_list "(this->super_Sized_relobj<64,_false>)" ( (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier (ERROR ">" >) ))) . field_identifier) . field_identifier) . field_identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) [ identifier ]) = (cast_expression "(Output_section *)0x2" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) (ERROR ";\n                puVar18 =" ; identifier =) (argument_list "(this->super_Sized_relobj<64,_false>)" ( (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier (ERROR ">" >) ))) . field_identifier) . field_identifier) < identifier) , identifier) (ERROR "::allocator<long_long_unsigned_int>_>\n                          ._M_impl._M_start;\n                *(undefined4 *" : : identifier < identifier > identifier > . identifier . identifier ; * ( identifier *) )) (argument_list "(puVar18 + uVar69)" ( (binary_expression "puVar18 + uVar69" identifier + identifier) ))) = number_literal)) (ERROR ";" ;) * (cast_expression "(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff" (parenthesized_expression "((int)puVar18 + uVar69 * 8 + 4)" ( (binary_expression "(int)puVar18 + uVar69 * 8 + 4" (binary_expression "(int)puVar18 + uVar69 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar69 * 8" identifier * number_literal)) + number_literal) )) = number_literal))) (ERROR ";\n              }\n            }\n            else if" ; } } else if) (argument_list "(pOVar44 == (Output_section *)0x0)" ( (binary_expression "pOVar44 == (Output_section *)0x0" identifier == (cast_expression "(Output_section *)0x0" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) (ERROR "{\n              ppOVar17" { identifier) [ identifier ]) = (cast_expression "(Output_section *)0x0" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) (ERROR ";\n              puVar18 =" ; identifier =) (argument_list "(this->super_Sized_relobj<64,_false>)" ( (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier (ERROR ">" >) ))) . field_identifier) . field_identifier) < identifier) , identifier) (ERROR "::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *" : : identifier < identifier > identifier > . identifier . identifier ; * ( identifier *) )) (argument_list "(puVar18 + uVar69)" ( (binary_expression "puVar18 + uVar69" identifier + identifier) ))) = number_literal))))) (ERROR ";\n              *(undefined4 *" ; * ( identifier *) )) (argument_list "((int)puVar18 + uVar69 * 8 + 4)" ( (binary_expression "(int)puVar18 + uVar69 * 8 + 4" (binary_expression "(int)puVar18 + uVar69 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar69 * 8" identifier * number_literal)) + number_literal) ))) = number_literal) )) (expression_statement ";" ;)) }) (else_clause "else {\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }" else (compound_statement "{\n              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;\n                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */\n              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;\n              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;\n              (pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;\n              pRVar43->output_reloc_count_ = 0;\n              pRVar43->posd_ = (Output_data *)0x0;\n              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }\n              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;\n              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;\n              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;\n              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;\n              *(uint *)((int)piVar62 + -0x18) = uVar69;\n              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;\n              *(Layout **)((int)piVar62 + -0x20) = layout;\n              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;\n              pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));\n              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;\n              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;\n              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;\n              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;\n            }" { (expression_statement "*(undefined4 *)((int)piVar62 + -0x10) = 0x14;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x10) = 0x14" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x10)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));" (assignment_expression "pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10))" identifier = (cast_expression "(Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10))" ( (type_descriptor "Relocatable_relocs *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(*(uint *)((int)piVar62 + -0x10))" identifier (argument_list "(*(uint *)((int)piVar62 + -0x10))" ( (pointer_expression "*(uint *)((int)piVar62 + -0x10)" * (cast_expression "(uint *)((int)piVar62 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (ERROR "(pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::" (comma_expression "(pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std" (binary_expression "(pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char" (field_expression "(pRVar43->reloc_strategies_).\n              super__Vector_base" (parenthesized_expression "(pRVar43->reloc_strategies_)" ( (field_expression "pRVar43->reloc_strategies_" identifier -> field_identifier) )) . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0;" (assignment_expression "allocator<unsigned_char>_>._M_impl._M_start =\n                   (pointer)0x0" (field_expression "allocator<unsigned_char>_>._M_impl._M_start" (field_expression "allocator<unsigned_char>_>._M_impl" (binary_expression "allocator<unsigned_char>_" (binary_expression "allocator<unsigned_char" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "(pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::" (comma_expression "(pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std" (binary_expression "(pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char" (field_expression "(pRVar43->reloc_strategies_).\n              super__Vector_base" (parenthesized_expression "(pRVar43->reloc_strategies_)" ( (field_expression "pRVar43->reloc_strategies_" identifier -> field_identifier) )) . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0;" (assignment_expression "allocator<unsigned_char>_>._M_impl._M_finish =\n                   (pointer)0x0" (field_expression "allocator<unsigned_char>_>._M_impl._M_finish" (field_expression "allocator<unsigned_char>_>._M_impl" (binary_expression "allocator<unsigned_char>_" (binary_expression "allocator<unsigned_char" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (ERROR "(pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std::" (comma_expression "(pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char,_std" (binary_expression "(pRVar43->reloc_strategies_).\n              super__Vector_base<unsigned_char" (field_expression "(pRVar43->reloc_strategies_).\n              super__Vector_base" (parenthesized_expression "(pRVar43->reloc_strategies_)" ( (field_expression "pRVar43->reloc_strategies_" identifier -> field_identifier) )) . field_identifier) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0;" (assignment_expression "allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage = (pointer)0x0" (field_expression "allocator<unsigned_char>_>._M_impl.\n              _M_end_of_storage" (field_expression "allocator<unsigned_char>_>._M_impl" (binary_expression "allocator<unsigned_char>_" (binary_expression "allocator<unsigned_char" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "pRVar43->output_reloc_count_ = 0;" (assignment_expression "pRVar43->output_reloc_count_ = 0" (field_expression "pRVar43->output_reloc_count_" identifier -> field_identifier) = number_literal) ;) (expression_statement "pRVar43->posd_ = (Output_data *)0x0;" (assignment_expression "pRVar43->posd_ = (Output_data *)0x0" (field_expression "pRVar43->posd_" identifier -> field_identifier) = (cast_expression "(Output_data *)0x0" ( (type_descriptor "Output_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)\n              {\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }" if (parenthesized_expression "((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)" ( (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) <= identifier) )) (compound_statement "{\n                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;\n                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";\n                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;\n                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";\n                    /* WARNING: Subroutine does not return */\n                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;\n                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));\n              }" { (expression_statement "*(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;" (assignment_expression "*(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_" (pointer_expression "*(undefined ***)((int)piVar62 + -4)" * (cast_expression "(undefined ***)((int)piVar62 + -4)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "((int)piVar62 + -4)" ( (binary_expression "(int)piVar62 + -4" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "&_GLOBAL_OFFSET_TABLE_" & identifier)) ;) (expression_statement "*(char **)((int)piVar62 + -8) = "set_relocatable_relocs";" (assignment_expression "*(char **)((int)piVar62 + -8) = "set_relocatable_relocs"" (pointer_expression "*(char **)((int)piVar62 + -8)" * (cast_expression "(char **)((int)piVar62 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -8)" ( (binary_expression "(int)piVar62 + -8" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (string_literal ""set_relocatable_relocs"" " string_content ")) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0xc) = 0x541;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0xc) = 0x541" (pointer_expression "*(undefined4 *)((int)piVar62 + -0xc)" * (cast_expression "(undefined4 *)((int)piVar62 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)((int)piVar62 + -0x10) = "../../gold/object.h";" (assignment_expression "*(char **)((int)piVar62 + -0x10) = "../../gold/object.h"" (pointer_expression "*(char **)((int)piVar62 + -0x10)" * (cast_expression "(char **)((int)piVar62 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (string_literal ""../../gold/object.h"" " string_content ")) ;) comment (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8));" (call_expression "do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8))" identifier (argument_list "(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                                    *(char **)((int)piVar62 + -8))" ( (pointer_expression "*(char **)((int)piVar62 + -0x10)" * (cast_expression "(char **)((int)piVar62 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(int *)((int)piVar62 + -0xc)" * (cast_expression "(int *)((int)piVar62 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(char **)((int)piVar62 + -8)" * (cast_expression "(char **)((int)piVar62 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -8)" ( (binary_expression "(int)piVar62 + -8" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) })) (expression_statement "(((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43;" (assignment_expression "(((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69] = pRVar43" (subscript_expression "(((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start[uVar69]" (field_expression "(((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl._M_start" (field_expression "(((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )._M_impl" (parenthesized_expression "(((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n              )" ( (binary_expression "((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>" (binary_expression "((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_" (binary_expression "((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold" (binary_expression "((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold::Relocatable_relocs*,_std" (binary_expression "((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base<gold" (field_expression "((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->\n              super__Vector_base" (parenthesized_expression "((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)" ( (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) )) -> field_identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Relocatable_relocs" : : identifier) * (ERROR ">" >) identifier) > identifier) )) . field_identifier) . field_identifier) [ identifier ]) = identifier) ;) (expression_statement "*(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;" (assignment_expression "*(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43" (pointer_expression "*(Relocatable_relocs **)((int)piVar62 + -0xc)" * (cast_expression "(Relocatable_relocs **)((int)piVar62 + -0xc)" ( (type_descriptor "Relocatable_relocs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(Output_section **)((int)piVar62 + -0x10) = pOVar44;" (assignment_expression "*(Output_section **)((int)piVar62 + -0x10) = pOVar44" (pointer_expression "*(Output_section **)((int)piVar62 + -0x10)" * (cast_expression "(Output_section **)((int)piVar62 + -0x10)" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(Shdr **)((int)piVar62 + -0x14) = &shdr_2;" (assignment_expression "*(Shdr **)((int)piVar62 + -0x14) = &shdr_2" (pointer_expression "*(Shdr **)((int)piVar62 + -0x14)" * (cast_expression "(Shdr **)((int)piVar62 + -0x14)" ( (type_descriptor "Shdr **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "&shdr_2" & identifier)) ;) (expression_statement "*(uint *)((int)piVar62 + -0x18) = uVar69;" (assignment_expression "*(uint *)((int)piVar62 + -0x18) = uVar69" (pointer_expression "*(uint *)((int)piVar62 + -0x18)" * (cast_expression "(uint *)((int)piVar62 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x18)" ( (binary_expression "(int)piVar62 + -0x18" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;" (assignment_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this" (pointer_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c)" * (call_expression "(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x1c)" ( (binary_expression "(int)piVar62 + -0x1c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(Layout **)((int)piVar62 + -0x20) = layout;" (assignment_expression "*(Layout **)((int)piVar62 + -0x20) = layout" (pointer_expression "*(Layout **)((int)piVar62 + -0x20)" * (cast_expression "(Layout **)((int)piVar62 + -0x20)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x20)" ( (binary_expression "(int)piVar62 + -0x20" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x24)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x24)" ( (binary_expression "(int)piVar62 + -0x24" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));" (comma_expression "pOVar44 = Layout::layout_reloc<64,_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc))" (binary_expression "pOVar44 = Layout::layout_reloc<64" (assignment_expression "pOVar44 = Layout" identifier = identifier) (ERROR "::layout_reloc" : : identifier) < number_literal) , (binary_expression "_false>\n                                  (*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc))" identifier > (parenthesized_expression "(*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc))" ( (comma_expression "*(Layout **)((int)piVar62 + -0x20),\n                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc)" (pointer_expression "*(Layout **)((int)piVar62 + -0x20)" * (cast_expression "(Layout **)((int)piVar62 + -0x20)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x20)" ( (binary_expression "(int)piVar62 + -0x20" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),\n                                   *(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc)" (pointer_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c)" * (call_expression "(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x1c)" ( (binary_expression "(int)piVar62 + -0x1c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(uint *)((int)piVar62 + -0x18),\n                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc)" (pointer_expression "*(uint *)((int)piVar62 + -0x18)" * (cast_expression "(uint *)((int)piVar62 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x18)" ( (binary_expression "(int)piVar62 + -0x18" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(Shdr<64,_false> **)((int)piVar62 + -0x14),\n                                   *(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc)" (pointer_expression "*(Shdr<64,_false> **)((int)piVar62 + -0x14)" * (call_expression "(Shdr<64,_false> **)((int)piVar62 + -0x14)" (parenthesized_expression "(Shdr<64,_false> **)" ( (comma_expression "Shdr<64,_false> **" (binary_expression "Shdr<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(Output_section **)((int)piVar62 + -0x10),\n                                   *(Relocatable_relocs **)((int)piVar62 + -0xc)" (pointer_expression "*(Output_section **)((int)piVar62 + -0x10)" * (cast_expression "(Output_section **)((int)piVar62 + -0x10)" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(Relocatable_relocs **)((int)piVar62 + -0xc)" * (cast_expression "(Relocatable_relocs **)((int)piVar62 + -0xc)" ( (type_descriptor "Relocatable_relocs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))))))) )))) ;) (expression_statement "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44;" (assignment_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69] = pOVar44" (subscript_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start[uVar69]" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl._M_start" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n              _M_impl" (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold::Output_section*,_std" (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base<gold" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n              super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) [ identifier ]) = identifier) ;) (ERROR "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std::" (comma_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int,_std" (assignment_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                        super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start;" (field_expression "allocator<long_long_unsigned_int>_>\n                        ._M_impl._M_start" (field_expression "allocator<long_long_unsigned_int>_>\n                        ._M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + uVar69) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar18 + uVar69) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar18 + uVar69)" * (cast_expression "(undefined4 *)(puVar18 + uVar69)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + uVar69)" ( (binary_expression "puVar18 + uVar69" identifier + identifier) )))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;" (assignment_expression "*(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff" (pointer_expression "*(undefined4 *)((int)puVar18 + uVar69 * 8 + 4)" * (cast_expression "(undefined4 *)((int)puVar18 + uVar69 * 8 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + uVar69 * 8 + 4)" ( (binary_expression "(int)puVar18 + uVar69 * 8 + 4" (binary_expression "(int)puVar18 + uVar69 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar69 * 8" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_16" ( (binary_expression "Shdr_data<64> *)extraout_ECX_16" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_16" * (ERROR ")" )) identifier)) ))) ;) }))) })) (expression_statement "local_12c = local_12c + 1;" (assignment_expression "local_12c = local_12c + 1" identifier = (binary_expression "local_12c + 1" identifier + number_literal)) ;) })) (while_statement "while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c);" while (parenthesized_expression "(reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c)" ( (ERROR "reloc_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "reloc_sections.super__Vector_base<unsigned_int,_std" (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (binary_expression "allocator<unsigned_int>_>.\n                 _M_impl._M_finish != local_12c" (field_expression "allocator<unsigned_int>_>.\n                 _M_impl._M_finish" (field_expression "allocator<unsigned_int>_>.\n                 _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != identifier) )) (expression_statement ";" ;)) }) (ERROR "if (bVar26) {\n        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_start !=\n             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n             _M_impl._M_finish) ||\n           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)) {\n          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;\n          *(char **)((int)piVar62 + -8) = "do_layout";\n          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;\n          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;\n          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),\n                              *(char **)((int)piVar62 + -8));\n        }\n      }\n      else {\n        puVar58 = debug_info_sections.\n                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;\n        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start !=\n            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 0;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          }" if ( identifier ) { if ( ( identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier != identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier ) || ( identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier != identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier ) ) { * ( identifier < number_literal > * * ) ( ( primitive_type ) identifier + number_literal ) = identifier . identifier ; * ( primitive_type * * ) ( ( primitive_type ) identifier + number_literal ) = " identifier " ; * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) = number_literal ; * ( primitive_type * * ) ( ( primitive_type ) identifier + number_literal ) = " . . / . . / identifier / identifier . identifier " ; comment * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) = number_literal ; identifier ( * ( primitive_type * * ) ( ( primitive_type ) identifier + number_literal ) , * ( primitive_type * ) ( ( primitive_type ) identifier + number_literal ) , * ( primitive_type * * ) ( ( primitive_type ) identifier + number_literal ) ) ; } } else { identifier = identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier ; if ( identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier != identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier ) { do { identifier = * identifier ; * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) = identifier [ identifier ] ; * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) = identifier [ identifier ] ; * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) = identifier ; * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) = number_literal ; * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) = identifier ; * ( identifier * * ) ( ( primitive_type ) identifier + number_literal ) = identifier ; * ( identifier < number_literal , identifier > * * ) ( ( primitive_type ) identifier + number_literal ) = identifier ; * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) = number_literal ; * ( identifier * * ) ( ( primitive_type ) identifier + number_literal ) = identifier ; comment * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) = number_literal ; identifier : : identifier < number_literal , identifier > ( * ( identifier * * ) ( ( primitive_type ) identifier + number_literal ) , * ( primitive_type * ) ( ( primitive_type ) identifier + number_literal ) , * ( identifier < number_literal , identifier > * * ) ( ( primitive_type ) identifier + number_literal ) , * ( identifier * * ) ( ( primitive_type ) identifier + number_literal ) , * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) , * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) , * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) , * ( identifier * ) ( ( primitive_type ) identifier + number_literal ) ) ; identifier = identifier + number_literal ; }) while (parenthesized_expression "(debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58)" ( (ERROR "debug_info_sections.\n                   super__Vector_base<unsigned_int,_std::" (comma_expression "debug_info_sections.\n                   super__Vector_base<unsigned_int,_std" (binary_expression "debug_info_sections.\n                   super__Vector_base<unsigned_int" (field_expression "debug_info_sections.\n                   super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (binary_expression "allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58" (field_expression "allocator<unsigned_int>_>._M_impl._M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != identifier) )) ;) })))) (ERROR "puVar58 = debug_types_sections.\n                  super__Vector_base<unsigned_int,_std::" (comma_expression "puVar58 = debug_types_sections.\n                  super__Vector_base<unsigned_int,_std" (assignment_expression "puVar58 = debug_types_sections.\n                  super__Vector_base<unsigned_int" identifier = (binary_expression "debug_types_sections.\n                  super__Vector_base<unsigned_int" (field_expression "debug_types_sections.\n                  super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl._M_start;" (field_expression "allocator<unsigned_int>_>._M_impl._M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start) {\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }" if (parenthesized_expression "(debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_start)" ( (ERROR "debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "debug_types_sections.super__Vector_base<unsigned_int,_std" (binary_expression "debug_types_sections.super__Vector_base<unsigned_int" (field_expression "debug_types_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : : (comma_expression "allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int,_std" (binary_expression "allocator<unsigned_int>_>.\n            _M_impl._M_finish !=\n            debug_types_sections.super__Vector_base<unsigned_int" (field_expression "allocator<unsigned_int>_>.\n            _M_impl._M_finish" (field_expression "allocator<unsigned_int>_>.\n            _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != (binary_expression "debug_types_sections.super__Vector_base<unsigned_int" (field_expression "debug_types_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (field_expression "allocator<unsigned_int>_>.\n            _M_impl._M_start" (field_expression "allocator<unsigned_int>_>.\n            _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n          do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);\n        }" { (do_statement "do {\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          } while (debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58);" do (compound_statement "{\n            uVar6 = *puVar58;\n            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];\n            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];\n            *(uint *)((int)piVar62 + -0x18) = uVar6;\n            *(undefined4 *)((int)piVar62 + -0x1c) = 0;\n            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;\n            *(File_view **)((int)piVar62 + -0x24) = local_164;\n            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;\n            *(undefined4 *)((int)piVar62 + -0x2c) = 1;\n            *(Layout **)((int)piVar62 + -0x30) = layout;\n            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;\n            Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));\n            puVar58 = puVar58 + 1;\n          }" { (expression_statement "uVar6 = *puVar58;" (assignment_expression "uVar6 = *puVar58" identifier = (pointer_expression "*puVar58" * identifier)) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6]" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x10)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (subscript_expression "puVar31[uVar6]" identifier [ identifier ])) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6]" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (subscript_expression "puVar30[uVar6]" identifier [ identifier ])) ;) (expression_statement "*(uint *)((int)piVar62 + -0x18) = uVar6;" (assignment_expression "*(uint *)((int)piVar62 + -0x18) = uVar6" (pointer_expression "*(uint *)((int)piVar62 + -0x18)" * (cast_expression "(uint *)((int)piVar62 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x18)" ( (binary_expression "(int)piVar62 + -0x18" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x1c) = 0" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x1c)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x1c)" ( (binary_expression "(int)piVar62 + -0x1c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(section_size_type *)((int)piVar62 + -0x20) = local_17c;" (assignment_expression "*(section_size_type *)((int)piVar62 + -0x20) = local_17c" (pointer_expression "*(section_size_type *)((int)piVar62 + -0x20)" * (cast_expression "(section_size_type *)((int)piVar62 + -0x20)" ( (type_descriptor "section_size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x20)" ( (binary_expression "(int)piVar62 + -0x20" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(File_view **)((int)piVar62 + -0x24) = local_164;" (assignment_expression "*(File_view **)((int)piVar62 + -0x24) = local_164" (pointer_expression "*(File_view **)((int)piVar62 + -0x24)" * (cast_expression "(File_view **)((int)piVar62 + -0x24)" ( (type_descriptor "File_view **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x24)" ( (binary_expression "(int)piVar62 + -0x24" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;" (assignment_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this" (pointer_expression "*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28)" * (call_expression "(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x28)" ( (binary_expression "(int)piVar62 + -0x28" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x2c) = 1;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x2c) = 1" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x2c)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x2c)" ( (binary_expression "(int)piVar62 + -0x2c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(Layout **)((int)piVar62 + -0x30) = layout;" (assignment_expression "*(Layout **)((int)piVar62 + -0x30) = layout" (pointer_expression "*(Layout **)((int)piVar62 + -0x30)" * (cast_expression "(Layout **)((int)piVar62 + -0x30)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x30)" ( (binary_expression "(int)piVar62 + -0x30" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x34)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x34)" ( (binary_expression "(int)piVar62 + -0x34" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (labeled_statement "Layout::add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));" statement_identifier : (ERROR ":" :) (expression_statement "add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10));" (comma_expression "add_to_gdb_index<64,_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10))" (binary_expression "add_to_gdb_index<64" identifier < number_literal) , (binary_expression "_false>\n                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10))" identifier > (parenthesized_expression "(*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10))" ( (comma_expression "*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10)" (pointer_expression "*(Layout **)((int)piVar62 + -0x30)" * (cast_expression "(Layout **)((int)piVar62 + -0x30)" ( (type_descriptor "Layout **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x30)" ( (binary_expression "(int)piVar62 + -0x30" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(bool *)((int)piVar62 + -0x2c),\n                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10)" (pointer_expression "*(bool *)((int)piVar62 + -0x2c)" * (cast_expression "(bool *)((int)piVar62 + -0x2c)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x2c)" ( (binary_expression "(int)piVar62 + -0x2c" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),\n                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10)" (pointer_expression "*(Sized_relobj<64,_false> **)((int)piVar62 + -0x28)" * (call_expression "(Sized_relobj<64,_false> **)((int)piVar62 + -0x28)" (parenthesized_expression "(Sized_relobj<64,_false> **)" ( (comma_expression "Sized_relobj<64,_false> **" (binary_expression "Sized_relobj<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "((int)piVar62 + -0x28)" ( (binary_expression "(int)piVar62 + -0x28" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10)" (pointer_expression "*(uchar **)((int)piVar62 + -0x24)" * (cast_expression "(uchar **)((int)piVar62 + -0x24)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x24)" ( (binary_expression "(int)piVar62 + -0x24" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(off_t *)((int)piVar62 + -0x20),\n                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10)" (pointer_expression "*(off_t *)((int)piVar62 + -0x20)" * (cast_expression "(off_t *)((int)piVar62 + -0x20)" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x20)" ( (binary_expression "(int)piVar62 + -0x20" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10)" (pointer_expression "*(uint *)((int)piVar62 + -0x18)" * (cast_expression "(uint *)((int)piVar62 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x18)" ( (binary_expression "(int)piVar62 + -0x18" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (comma_expression "*(uint *)((int)piVar62 + -0x14),\n                       *(uint *)((int)piVar62 + -0x10)" (pointer_expression "*(uint *)((int)piVar62 + -0x14)" * (cast_expression "(uint *)((int)piVar62 + -0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(uint *)((int)piVar62 + -0x10)" * (cast_expression "(uint *)((int)piVar62 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))))))))) )))) ;)) (expression_statement "puVar58 = puVar58 + 1;" (assignment_expression "puVar58 = puVar58 + 1" identifier = (binary_expression "puVar58 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58)" ( (ERROR "debug_types_sections.\n                   super__Vector_base<unsigned_int,_std::" (comma_expression "debug_types_sections.\n                   super__Vector_base<unsigned_int,_std" (binary_expression "debug_types_sections.\n                   super__Vector_base<unsigned_int" (field_expression "debug_types_sections.\n                   super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (binary_expression "allocator<unsigned_int>_>._M_impl._M_finish\n                   != puVar58" (field_expression "allocator<unsigned_int>_>._M_impl._M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != identifier) )) ;) })) })) (if_statement "if (bVar24) {\n        if (local_190->section_headers_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->section_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbols_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbol_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0;\n      }\n      else {\n        pFVar20 = sd->section_headers;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        pFVar20 = sd->section_names;\n        sd->section_headers = (File_view *)0x0;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        sd->section_names = (File_view *)0x0;\n      }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n        if (local_190->section_headers_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->section_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbols_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        if (local_190->symbol_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }\n        (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0;\n      }" { (if_statement "if (local_190->section_headers_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }" if (parenthesized_expression "(local_190->section_headers_data != (uchar *)0x0)" ( (binary_expression "local_190->section_headers_data != (uchar *)0x0" (field_expression "local_190->section_headers_data" identifier -> field_identifier) != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }" { (expression_statement "*(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;" (assignment_expression "*(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data" (pointer_expression "*(uchar **)((int)piVar62 + -0x10)" * (cast_expression "(uchar **)((int)piVar62 + -0x10)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_190->section_headers_data" identifier -> field_identifier)) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa282c" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete__(*(void **)((int)piVar62 + -0x10));" (call_expression "operator_delete__(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) })) (if_statement "if (local_190->section_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }" if (parenthesized_expression "(local_190->section_names_data != (uchar *)0x0)" ( (binary_expression "local_190->section_names_data != (uchar *)0x0" (field_expression "local_190->section_names_data" identifier -> field_identifier) != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }" { (expression_statement "*(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;" (assignment_expression "*(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data" (pointer_expression "*(uchar **)((int)piVar62 + -0x10)" * (cast_expression "(uchar **)((int)piVar62 + -0x10)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_190->section_names_data" identifier -> field_identifier)) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa284b" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete__(*(void **)((int)piVar62 + -0x10));" (call_expression "operator_delete__(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) })) (if_statement "if (local_190->symbols_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }" if (parenthesized_expression "(local_190->symbols_data != (uchar *)0x0)" ( (binary_expression "local_190->symbols_data != (uchar *)0x0" (field_expression "local_190->symbols_data" identifier -> field_identifier) != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }" { (expression_statement "*(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;" (assignment_expression "*(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data" (pointer_expression "*(uchar **)((int)piVar62 + -0x10)" * (cast_expression "(uchar **)((int)piVar62 + -0x10)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_190->symbols_data" identifier -> field_identifier)) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa286a" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete__(*(void **)((int)piVar62 + -0x10));" (call_expression "operator_delete__(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) })) (if_statement "if (local_190->symbol_names_data != (uchar *)0x0) {\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }" if (parenthesized_expression "(local_190->symbol_names_data != (uchar *)0x0)" ( (binary_expression "local_190->symbol_names_data != (uchar *)0x0" (field_expression "local_190->symbol_names_data" identifier -> field_identifier) != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;\n          operator_delete__(*(void **)((int)piVar62 + -0x10));\n        }" { (expression_statement "*(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;" (assignment_expression "*(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data" (pointer_expression "*(uchar **)((int)piVar62 + -0x10)" * (cast_expression "(uchar **)((int)piVar62 + -0x10)" ( (type_descriptor "uchar **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_190->symbol_names_data" identifier -> field_identifier)) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa2889" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete__(*(void **)((int)piVar62 + -0x10));" (call_expression "operator_delete__(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) })) (expression_statement "(this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0;" (assignment_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.sd_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) = (cast_expression "(Symbols_data *)0x0" ( (type_descriptor "Symbols_data *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        pFVar20 = sd->section_headers;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        pFVar20 = sd->section_names;\n        sd->section_headers = (File_view *)0x0;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        sd->section_names = (File_view *)0x0;\n      }" else (compound_statement "{\n        pFVar20 = sd->section_headers;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        pFVar20 = sd->section_names;\n        sd->section_headers = (File_view *)0x0;\n        if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }\n        sd->section_names = (File_view *)0x0;\n      }" { (expression_statement "pFVar20 = sd->section_headers;" (assignment_expression "pFVar20 = sd->section_headers" identifier = (field_expression "sd->section_headers" identifier -> field_identifier)) ;) (if_statement "if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }" if (parenthesized_expression "(pFVar20 != (File_view *)0x0)" ( (binary_expression "pFVar20 != (File_view *)0x0" identifier != (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }" { (expression_statement "*(File_view **)((int)piVar62 + -0x10) = pFVar20;" (assignment_expression "*(File_view **)((int)piVar62 + -0x10) = pFVar20" (pointer_expression "*(File_view **)((int)piVar62 + -0x10)" * (cast_expression "(File_view **)((int)piVar62 + -0x10)" ( (type_descriptor "File_view **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (labeled_statement "File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;" statement_identifier : (ERROR ":" :) (expression_statement "~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;" (unary_expression "~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))" ~ (call_expression "File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))" identifier (argument_list "(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))" ( (pointer_expression "*(File_view **)((int)piVar62 + -0x10)" * (cast_expression "(File_view **)((int)piVar62 + -0x10)" ( (type_descriptor "File_view **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(int *)((int)piVar62 + -0xc)" * (cast_expression "(int *)((int)piVar62 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) )))) ;)) (expression_statement "*(undefined4 *)((int)piVar62 + -0xc) = 0xc;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0xc) = 0xc" (pointer_expression "*(undefined4 *)((int)piVar62 + -0xc)" * (cast_expression "(undefined4 *)((int)piVar62 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(File_view **)((int)piVar62 + -0x10) = pFVar20;" (assignment_expression "*(File_view **)((int)piVar62 + -0x10) = pFVar20" (pointer_expression "*(File_view **)((int)piVar62 + -0x10)" * (cast_expression "(File_view **)((int)piVar62 + -0x10)" ( (type_descriptor "File_view **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));" (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(uint *)((int)piVar62 + -0xc)" * (cast_expression "(uint *)((int)piVar62 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) })) (expression_statement "pFVar20 = sd->section_names;" (assignment_expression "pFVar20 = sd->section_names" identifier = (field_expression "sd->section_names" identifier -> field_identifier)) ;) (expression_statement "sd->section_headers = (File_view *)0x0;" (assignment_expression "sd->section_headers = (File_view *)0x0" (field_expression "sd->section_headers" identifier -> field_identifier) = (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (pFVar20 != (File_view *)0x0) {\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }" if (parenthesized_expression "(pFVar20 != (File_view *)0x0)" ( (binary_expression "pFVar20 != (File_view *)0x0" identifier != (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;\n          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;\n          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;\n          *(File_view **)((int)piVar62 + -0x10) = pFVar20;\n          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;\n          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));\n        }" { (expression_statement "*(File_view **)((int)piVar62 + -0x10) = pFVar20;" (assignment_expression "*(File_view **)((int)piVar62 + -0x10) = pFVar20" (pointer_expression "*(File_view **)((int)piVar62 + -0x10)" * (cast_expression "(File_view **)((int)piVar62 + -0x10)" ( (type_descriptor "File_view **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (labeled_statement "File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;" statement_identifier : (ERROR ":" :) (expression_statement "~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))\n          ;" (unary_expression "~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))" ~ (call_expression "File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))" identifier (argument_list "(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))" ( (pointer_expression "*(File_view **)((int)piVar62 + -0x10)" * (cast_expression "(File_view **)((int)piVar62 + -0x10)" ( (type_descriptor "File_view **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(int *)((int)piVar62 + -0xc)" * (cast_expression "(int *)((int)piVar62 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) )))) ;)) (expression_statement "*(undefined4 *)((int)piVar62 + -0xc) = 0xc;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0xc) = 0xc" (pointer_expression "*(undefined4 *)((int)piVar62 + -0xc)" * (cast_expression "(undefined4 *)((int)piVar62 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(File_view **)((int)piVar62 + -0x10) = pFVar20;" (assignment_expression "*(File_view **)((int)piVar62 + -0x10) = pFVar20" (pointer_expression "*(File_view **)((int)piVar62 + -0x10)" * (cast_expression "(File_view **)((int)piVar62 + -0x10)" ( (type_descriptor "File_view **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));" (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(uint *)((int)piVar62 + -0xc)" * (cast_expression "(uint *)((int)piVar62 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0xc)" ( (binary_expression "(int)piVar62 + -0xc" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) })) (expression_statement "sd->section_names = (File_view *)0x0;" (assignment_expression "sd->section_names = (File_view *)0x0" (field_expression "sd->section_names" identifier -> field_identifier) = (cast_expression "(File_view *)0x0" ( (type_descriptor "File_view *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) }))) (expression_statement "else" identifier ;) { (expression_statement "shdr.p_ = local_134;" (assignment_expression "shdr.p_ = local_134" (field_expression "shdr.p_" identifier . field_identifier) = identifier) ;) (expression_statement "uVar69 = *(uint *)(local_160 + 0x40);" (assignment_expression "uVar69 = *(uint *)(local_160 + 0x40)" identifier = (pointer_expression "*(uint *)(local_160 + 0x40)" * (cast_expression "(uint *)(local_160 + 0x40)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_160 + 0x40)" ( (binary_expression "local_160 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "local_124 = *(Sized_relobj_file<64,_false> **)(local_160 + 0x44);" (assignment_expression "local_124 = *(Sized_relobj_file<64,_false> **)(local_160 + 0x44)" identifier = (pointer_expression "*(Sized_relobj_file<64,_false> **)(local_160 + 0x44)" * (call_expression "(Sized_relobj_file<64,_false> **)(local_160 + 0x44)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "(local_160 + 0x44)" ( (binary_expression "local_160 + 0x44" identifier + number_literal) ))))) ;) if (parenthesized_expression "(uVar69 < local_148)" ( (binary_expression "uVar69 < local_148" identifier < identifier) )) { (expression_statement "local_16c = 0;" (assignment_expression "local_16c = 0" identifier = number_literal) ;) (expression_statement "local_168 = 0;" (assignment_expression "local_168 = 0" identifier = number_literal) ;) (expression_statement "ppuVar57 = local_120;" (assignment_expression "ppuVar57 = local_120" identifier = identifier) ;) (expression_statement "piVar62 = (int *)&stack0xfffffe54;" (assignment_expression "piVar62 = (int *)&stack0xfffffe54" identifier = (cast_expression "(int *)&stack0xfffffe54" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&stack0xfffffe54" & identifier))) ;) do { (expression_statement "pbVar70 = local_144 + uVar69;" (assignment_expression "pbVar70 = local_144 + uVar69" identifier = (binary_expression "local_144 + uVar69" identifier + identifier)) ;) (expression_statement "shdr.p_ = local_134;" (assignment_expression "shdr.p_ = local_134" (field_expression "shdr.p_" identifier . field_identifier) = identifier) ;) if (parenthesized_expression "(bVar24)" ( identifier )) { identifier : if (parenthesized_expression "(bVar26)" ( identifier )) { (if_statement "if (parameters->options_ == (General_options *)0x0) {\n                piVar62[-2] = (int)"options";\n                piVar62[-3] = 0x5c;\n                piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                piVar62[-5] = 0xa42f6;\n                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n              }" if (parenthesized_expression "(parameters->options_ == (General_options *)0x0)" ( (binary_expression "parameters->options_ == (General_options *)0x0" (field_expression "parameters->options_" identifier -> field_identifier) == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                piVar62[-2] = (int)"options";\n                piVar62[-3] = 0x5c;\n                piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                piVar62[-5] = 0xa42f6;\n                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n              }" { (expression_statement "piVar62[-2] = (int)"options";" (assignment_expression "piVar62[-2] = (int)"options"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"options"" ( (type_descriptor "int" primitive_type) ) (string_literal ""options"" " string_content "))) ;) (expression_statement "piVar62[-3] = 0x5c;" (assignment_expression "piVar62[-3] = 0x5c" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-4] = (int)"../../gold/parameters.h";" (assignment_expression "piVar62[-4] = (int)"../../gold/parameters.h"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/parameters.h"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/parameters.h"" " string_content "))) ;) comment (expression_statement "piVar62[-5] = 0xa42f6;" (assignment_expression "piVar62[-5] = 0xa42f6" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);" (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) })) (if_statement "if ((parameters->options_->gc_sections_).value != false) {\n                piVar62[-3] = (int)pbVar70;\n                piVar62[-4] = (int)this;\n                piVar62[-5] = 0xa22ee;\n                bVar29 = Relobj::is_section_name_included((Relobj *)piVar62[-4],(char *)piVar62[-3])\n                ;\n                if (bVar29) {\nLAB_000a2c68:\n                  offset._0_4_ = this;\n                  offset._4_4_ = (_Base_ptr)i;\n                  piVar62[-3] = (int)&offset;\n                  piVar62[-4] = (int)symtab->gc_;\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2c8c;\n                  std::\n                  vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                  ::emplace_back<std::pair<gold::Relobj*,_unsigned_int>_>\n                            ((vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                              *)piVar62[-4],(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3]);\n                }\n                else {\n                  piVar62[-2] = (int)pbVar70;\n                  piVar62[-3] = (int)this;\n                  piVar62[-4] = (int)layout;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2313;\n                  bVar29 = Layout::keep_input_section\n                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],\n                                      (char *)piVar62[-2]);\n                  if ((bVar29) ||\n                     ((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)) goto LAB_000a2c68;\n                }\n                piVar62[-3] = (int)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_"\n                ;\n                piVar62[-4] = (int)pbVar70;\n                piVar62[-5] = 0xa234c;\n                sVar33 = strspn((char *)piVar62[-4],(char *)piVar62[-3]);\n                uVar69 = i;\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX;\n                ppuVar57 = local_120;\n                if (pbVar70[sVar33] == 0) {\n                  pGVar13 = symtab->gc_;\n                  piVar62[-4] = (int)pbVar70;\n                  offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                  piVar62[-5] = 0xa3075;\n                  sVar33 = strlen((char *)piVar62[-4]);\n                  piVar62[-1] = 0;\n                  piVar62[-2] = (int)(pbVar70 + sVar33);\n                  piVar62[-3] = (int)pbVar70;\n                  piVar62[-4] = (int)&offset;\n                  piVar62[-5] = 0xa3089;\n                  std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                  _M_construct<char_const*>();\n                  p_Var53 = offset._4_4_;\n                  pSVar51 = (Sized_relobj_file<64,_false> *)offset;\n                  p_Var52 = (pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header\n                            ._M_parent;\n                  p_Var73 = &(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.\n                             _M_header;\n                  shdr_2.p_ = (Shdr_data<64> *)this;\n                  local_174 = p_Var73;\n                  if (p_Var52 == (_Base_ptr)0x0) {\nLAB_000a320c:\n                    piVar62[-3] = (int)&local_f1;\n                    piVar62[-4] = (int)&local_e8;\n                    piVar62[-5] = (int)&std::piecewise_construct;\n                    local_e8 = &offset;\n                    piVar62[-6] = (int)p_Var73;\n                    piVar62[-7] = (int)&pGVar13->cident_sections_;\n                    piVar62[-8] = (int)local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    piVar62[-9] = 0xa324d;\n                    std::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::tuple<>_>\n                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left;\n                  local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                  piVar62[-1] = (int)p_Var36;\n                  piVar62[-2] = (int)&shdr_2;\n                  piVar62[-3] = local_170;\n                  piVar62[-4] = (int)ppuVar57;\n                  piVar62[-5] = 0xa31b4;\n                  p_Var37 = std::\n                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);\n                  if ((p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {\n                    piVar62[-4] = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    piVar62[-5] = 0xa32a8;\n                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);\n                    *pp_Var38 = (_func_int_varargs *)0x0;\n                    pp_Var38[1] = (_func_int_varargs *)this;\n                    pp_Var38[2] = (_func_int_varargs *)uVar69;\n                    local_e4 = local_174[3]._M_right;\n                    piVar62[-4] = 1;\n                    piVar62[-5] = (int)local_174[3]._M_parent;\n                    piVar62[-6] = (int)local_174[2]._M_right;\n                    piVar62[-7] = (int)&local_174[3]._M_left;\n                    piVar62[-8] = (int)local_10c;\n                    piVar62[-9] = 0xa32eb;\n                    std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }\n                    pp_Var38[3] = p_Var36;\n                    ppuVar57 = (undefined **)(local_170 * 4);\n                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];\n                    if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }\n                    local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);\n                  }\n                  if ((Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                    piVar62[-5] = 0xa31e7;\n                    operator_delete((void *)piVar62[-4]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;\n                    ppuVar57 = local_120;\n                  }\n                }\n              }\n            }" if (parenthesized_expression "((parameters->options_->gc_sections_).value != false)" ( (binary_expression "(parameters->options_->gc_sections_).value != false" (field_expression "(parameters->options_->gc_sections_).value" (parenthesized_expression "(parameters->options_->gc_sections_)" ( (field_expression "parameters->options_->gc_sections_" (field_expression "parameters->options_" identifier -> field_identifier) -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n                piVar62[-3] = (int)pbVar70;\n                piVar62[-4] = (int)this;\n                piVar62[-5] = 0xa22ee;\n                bVar29 = Relobj::is_section_name_included((Relobj *)piVar62[-4],(char *)piVar62[-3])\n                ;\n                if (bVar29) {\nLAB_000a2c68:\n                  offset._0_4_ = this;\n                  offset._4_4_ = (_Base_ptr)i;\n                  piVar62[-3] = (int)&offset;\n                  piVar62[-4] = (int)symtab->gc_;\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2c8c;\n                  std::\n                  vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                  ::emplace_back<std::pair<gold::Relobj*,_unsigned_int>_>\n                            ((vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                              *)piVar62[-4],(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3]);\n                }\n                else {\n                  piVar62[-2] = (int)pbVar70;\n                  piVar62[-3] = (int)this;\n                  piVar62[-4] = (int)layout;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2313;\n                  bVar29 = Layout::keep_input_section\n                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],\n                                      (char *)piVar62[-2]);\n                  if ((bVar29) ||\n                     ((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)) goto LAB_000a2c68;\n                }\n                piVar62[-3] = (int)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_"\n                ;\n                piVar62[-4] = (int)pbVar70;\n                piVar62[-5] = 0xa234c;\n                sVar33 = strspn((char *)piVar62[-4],(char *)piVar62[-3]);\n                uVar69 = i;\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX;\n                ppuVar57 = local_120;\n                if (pbVar70[sVar33] == 0) {\n                  pGVar13 = symtab->gc_;\n                  piVar62[-4] = (int)pbVar70;\n                  offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                  piVar62[-5] = 0xa3075;\n                  sVar33 = strlen((char *)piVar62[-4]);\n                  piVar62[-1] = 0;\n                  piVar62[-2] = (int)(pbVar70 + sVar33);\n                  piVar62[-3] = (int)pbVar70;\n                  piVar62[-4] = (int)&offset;\n                  piVar62[-5] = 0xa3089;\n                  std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                  _M_construct<char_const*>();\n                  p_Var53 = offset._4_4_;\n                  pSVar51 = (Sized_relobj_file<64,_false> *)offset;\n                  p_Var52 = (pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header\n                            ._M_parent;\n                  p_Var73 = &(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.\n                             _M_header;\n                  shdr_2.p_ = (Shdr_data<64> *)this;\n                  local_174 = p_Var73;\n                  if (p_Var52 == (_Base_ptr)0x0) {\nLAB_000a320c:\n                    piVar62[-3] = (int)&local_f1;\n                    piVar62[-4] = (int)&local_e8;\n                    piVar62[-5] = (int)&std::piecewise_construct;\n                    local_e8 = &offset;\n                    piVar62[-6] = (int)p_Var73;\n                    piVar62[-7] = (int)&pGVar13->cident_sections_;\n                    piVar62[-8] = (int)local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    piVar62[-9] = 0xa324d;\n                    std::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::tuple<>_>\n                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left;\n                  local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                  piVar62[-1] = (int)p_Var36;\n                  piVar62[-2] = (int)&shdr_2;\n                  piVar62[-3] = local_170;\n                  piVar62[-4] = (int)ppuVar57;\n                  piVar62[-5] = 0xa31b4;\n                  p_Var37 = std::\n                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);\n                  if ((p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {\n                    piVar62[-4] = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    piVar62[-5] = 0xa32a8;\n                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);\n                    *pp_Var38 = (_func_int_varargs *)0x0;\n                    pp_Var38[1] = (_func_int_varargs *)this;\n                    pp_Var38[2] = (_func_int_varargs *)uVar69;\n                    local_e4 = local_174[3]._M_right;\n                    piVar62[-4] = 1;\n                    piVar62[-5] = (int)local_174[3]._M_parent;\n                    piVar62[-6] = (int)local_174[2]._M_right;\n                    piVar62[-7] = (int)&local_174[3]._M_left;\n                    piVar62[-8] = (int)local_10c;\n                    piVar62[-9] = 0xa32eb;\n                    std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }\n                    pp_Var38[3] = p_Var36;\n                    ppuVar57 = (undefined **)(local_170 * 4);\n                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];\n                    if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }\n                    local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);\n                  }\n                  if ((Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                    piVar62[-5] = 0xa31e7;\n                    operator_delete((void *)piVar62[-4]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;\n                    ppuVar57 = local_120;\n                  }\n                }\n              }\n            }" { (expression_statement "piVar62[-3] = (int)pbVar70;" (assignment_expression "piVar62[-3] = (int)pbVar70" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-4] = (int)this;" (assignment_expression "piVar62[-4] = (int)this" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-5] = 0xa22ee;" (assignment_expression "piVar62[-5] = 0xa22ee" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (ERROR "bVar29 = Relobj::" (assignment_expression "bVar29 = Relobj" identifier = identifier) : :) (expression_statement "is_section_name_included((Relobj *)piVar62[-4],(char *)piVar62[-3])\n                ;" (call_expression "is_section_name_included((Relobj *)piVar62[-4],(char *)piVar62[-3])" identifier (argument_list "((Relobj *)piVar62[-4],(char *)piVar62[-3])" ( (cast_expression "(Relobj *)piVar62[-4]" ( (type_descriptor "Relobj *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (cast_expression "(char *)piVar62[-3]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) ))) ;) (if_statement "if (bVar29) {\nLAB_000a2c68:\n                  offset._0_4_ = this;\n                  offset._4_4_ = (_Base_ptr)i;\n                  piVar62[-3] = (int)&offset;\n                  piVar62[-4] = (int)symtab->gc_;\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2c8c;\n                  std::\n                  vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                  ::emplace_back<std::pair<gold::Relobj*,_unsigned_int>_>\n                            ((vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                              *)piVar62[-4],(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3]);\n                }\n                else {\n                  piVar62[-2] = (int)pbVar70;\n                  piVar62[-3] = (int)this;\n                  piVar62[-4] = (int)layout;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2313;\n                  bVar29 = Layout::keep_input_section\n                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],\n                                      (char *)piVar62[-2]);\n                  if ((bVar29) ||\n                     ((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)) goto LAB_000a2c68;\n                }" if (parenthesized_expression "(bVar29)" ( identifier )) (compound_statement "{\nLAB_000a2c68:\n                  offset._0_4_ = this;\n                  offset._4_4_ = (_Base_ptr)i;\n                  piVar62[-3] = (int)&offset;\n                  piVar62[-4] = (int)symtab->gc_;\n                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2c8c;\n                  std::\n                  vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                  ::emplace_back<std::pair<gold::Relobj*,_unsigned_int>_>\n                            ((vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                              *)piVar62[-4],(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3]);\n                }" { (labeled_statement "LAB_000a2c68:\n                  offset._0_4_ = this;" statement_identifier : (expression_statement "offset._0_4_ = this;" (assignment_expression "offset._0_4_ = this" (field_expression "offset._0_4_" identifier . field_identifier) = identifier) ;)) (expression_statement "offset._4_4_ = (_Base_ptr)i;" (assignment_expression "offset._4_4_ = (_Base_ptr)i" (field_expression "offset._4_4_" identifier . field_identifier) = (cast_expression "(_Base_ptr)i" ( (type_descriptor "_Base_ptr" type_identifier) ) identifier)) ;) (expression_statement "piVar62[-3] = (int)&offset;" (assignment_expression "piVar62[-3] = (int)&offset" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)&offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&offset" & identifier))) ;) (expression_statement "piVar62[-4] = (int)symtab->gc_;" (assignment_expression "piVar62[-4] = (int)symtab->gc_" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)symtab->gc_" ( (type_descriptor "int" primitive_type) ) (field_expression "symtab->gc_" identifier -> field_identifier))) ;) comment (expression_statement "piVar62[-5] = 0xa2c8c;" (assignment_expression "piVar62[-5] = 0xa2c8c" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (ERROR "std::\n                  vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                  ::emplace_back<std::pair<gold::Relobj*,_unsigned_int>_>\n                            ((vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                              *)piVar62[-4],(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3]);" (comma_expression "std::\n                  vector<std::pair<gold::Relobj*,_unsigned_int>,_std" identifier (ERROR "::\n                  vector<std::pair<gold::Relobj*,_unsigned_int>" : : (binary_expression "vector<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : identifier * , identifier >) , identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>_>\n                  ::emplace_back<std" (binary_expression "Relobj*,_unsigned_int>_>_>\n                  ::emplace_back" (binary_expression "Relobj*,_unsigned_int>_>_" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > identifier) > (ERROR "::" : :) identifier) < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > ( ( (comma_expression "vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                              *)piVar62[-4],(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3])" (binary_expression "vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>\n                              *)piVar62[-4]" (binary_expression "vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_" (binary_expression "vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_" (binary_expression "vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold" (binary_expression "vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std" (binary_expression "vector<std::pair<gold::Relobj*,_unsigned_int>,_std" (binary_expression "vector<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "vector<std::pair<gold" (binary_expression "vector<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > identifier) > identifier) > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (parenthesized_expression "(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3])" ( (binary_expression "pair<gold::Relobj*,_unsigned_int> *)piVar62[-3]" (binary_expression "pair<gold::Relobj*,_unsigned_int" (binary_expression "pair<gold" identifier < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (pointer_expression "*)piVar62[-3]" * (ERROR ")" )) (subscript_expression "piVar62[-3]" identifier [ number_literal ]))) ))) ;) }) (else_clause "else {\n                  piVar62[-2] = (int)pbVar70;\n                  piVar62[-3] = (int)this;\n                  piVar62[-4] = (int)layout;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2313;\n                  bVar29 = Layout::keep_input_section\n                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],\n                                      (char *)piVar62[-2]);\n                  if ((bVar29) ||\n                     ((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)) goto LAB_000a2c68;\n                }" else (compound_statement "{\n                  piVar62[-2] = (int)pbVar70;\n                  piVar62[-3] = (int)this;\n                  piVar62[-4] = (int)layout;\n                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa2313;\n                  bVar29 = Layout::keep_input_section\n                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],\n                                      (char *)piVar62[-2]);\n                  if ((bVar29) ||\n                     ((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)) goto LAB_000a2c68;\n                }" { (expression_statement "piVar62[-2] = (int)pbVar70;" (assignment_expression "piVar62[-2] = (int)pbVar70" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-3] = (int)this;" (assignment_expression "piVar62[-3] = (int)this" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-4] = (int)layout;" (assignment_expression "piVar62[-4] = (int)layout" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)layout" ( (type_descriptor "int" primitive_type) ) identifier)) ;) comment (expression_statement "piVar62[-5] = 0xa2313;" (assignment_expression "piVar62[-5] = 0xa2313" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (ERROR "bVar29 = Layout::" (assignment_expression "bVar29 = Layout" identifier = identifier) : :) (expression_statement "keep_input_section\n                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],\n                                      (char *)piVar62[-2]);" (call_expression "keep_input_section\n                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],\n                                      (char *)piVar62[-2])" identifier (argument_list "((Layout *)piVar62[-4],(Relobj *)piVar62[-3],\n                                      (char *)piVar62[-2])" ( (cast_expression "(Layout *)piVar62[-4]" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (cast_expression "(Relobj *)piVar62[-3]" ( (type_descriptor "Relobj *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) (if_statement "if ((bVar29) ||\n                     ((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)) goto LAB_000a2c68;" if (parenthesized_expression "((bVar29) ||\n                     ((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2))" ( (binary_expression "(bVar29) ||\n                     ((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)" (parenthesized_expression "(bVar29)" ( identifier )) || (parenthesized_expression "((undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)" ( (binary_expression "(undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U) < (undefined1 *)0x2" (cast_expression "(undefined1 *)\n                      ((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U)" ( (ERROR "(int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (comma_expression "(int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "(int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold::Sized_relobj_file<64" (binary_expression "(int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base<gold" (cast_expression "(int)&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base" & (field_expression "local_124[-1].deferred_layout_relocs_.\n                             super__Vector_base" (field_expression "local_124[-1].deferred_layout_relocs_" (subscript_expression "local_124[-1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) < identifier) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>_>\n                             ._M_impl._M_start + 2U" (field_expression "_false>::Deferred_layout>_>\n                             ._M_impl._M_start" (field_expression "_false>::Deferred_layout>_>\n                             ._M_impl" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) + number_literal)) ))) < (cast_expression "(undefined1 *)0x2" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000a2c68;" goto statement_identifier ;)) }))) (expression_statement "piVar62[-3] = (int)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_"\n                ;" (assignment_expression "piVar62[-3] = (int)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_"" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_"" ( (type_descriptor "int" primitive_type) ) (string_literal ""0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_"" " string_content "))) ;) (expression_statement "piVar62[-4] = (int)pbVar70;" (assignment_expression "piVar62[-4] = (int)pbVar70" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-5] = 0xa234c;" (assignment_expression "piVar62[-5] = 0xa234c" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "sVar33 = strspn((char *)piVar62[-4],(char *)piVar62[-3]);" (assignment_expression "sVar33 = strspn((char *)piVar62[-4],(char *)piVar62[-3])" identifier = (call_expression "strspn((char *)piVar62[-4],(char *)piVar62[-3])" identifier (argument_list "((char *)piVar62[-4],(char *)piVar62[-3])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (cast_expression "(char *)piVar62[-3]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) )))) ;) (expression_statement "uVar69 = i;" (assignment_expression "uVar69 = i" identifier = identifier) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX" ( (binary_expression "Shdr_data<64> *)extraout_ECX" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "ppuVar57 = local_120;" (assignment_expression "ppuVar57 = local_120" identifier = identifier) ;) (if_statement "if (pbVar70[sVar33] == 0) {\n                  pGVar13 = symtab->gc_;\n                  piVar62[-4] = (int)pbVar70;\n                  offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                  piVar62[-5] = 0xa3075;\n                  sVar33 = strlen((char *)piVar62[-4]);\n                  piVar62[-1] = 0;\n                  piVar62[-2] = (int)(pbVar70 + sVar33);\n                  piVar62[-3] = (int)pbVar70;\n                  piVar62[-4] = (int)&offset;\n                  piVar62[-5] = 0xa3089;\n                  std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                  _M_construct<char_const*>();\n                  p_Var53 = offset._4_4_;\n                  pSVar51 = (Sized_relobj_file<64,_false> *)offset;\n                  p_Var52 = (pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header\n                            ._M_parent;\n                  p_Var73 = &(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.\n                             _M_header;\n                  shdr_2.p_ = (Shdr_data<64> *)this;\n                  local_174 = p_Var73;\n                  if (p_Var52 == (_Base_ptr)0x0) {\nLAB_000a320c:\n                    piVar62[-3] = (int)&local_f1;\n                    piVar62[-4] = (int)&local_e8;\n                    piVar62[-5] = (int)&std::piecewise_construct;\n                    local_e8 = &offset;\n                    piVar62[-6] = (int)p_Var73;\n                    piVar62[-7] = (int)&pGVar13->cident_sections_;\n                    piVar62[-8] = (int)local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    piVar62[-9] = 0xa324d;\n                    std::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::tuple<>_>\n                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left;\n                  local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                  piVar62[-1] = (int)p_Var36;\n                  piVar62[-2] = (int)&shdr_2;\n                  piVar62[-3] = local_170;\n                  piVar62[-4] = (int)ppuVar57;\n                  piVar62[-5] = 0xa31b4;\n                  p_Var37 = std::\n                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);\n                  if ((p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {\n                    piVar62[-4] = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    piVar62[-5] = 0xa32a8;\n                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);\n                    *pp_Var38 = (_func_int_varargs *)0x0;\n                    pp_Var38[1] = (_func_int_varargs *)this;\n                    pp_Var38[2] = (_func_int_varargs *)uVar69;\n                    local_e4 = local_174[3]._M_right;\n                    piVar62[-4] = 1;\n                    piVar62[-5] = (int)local_174[3]._M_parent;\n                    piVar62[-6] = (int)local_174[2]._M_right;\n                    piVar62[-7] = (int)&local_174[3]._M_left;\n                    piVar62[-8] = (int)local_10c;\n                    piVar62[-9] = 0xa32eb;\n                    std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }\n                    pp_Var38[3] = p_Var36;\n                    ppuVar57 = (undefined **)(local_170 * 4);\n                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];\n                    if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }\n                    local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);\n                  }\n                  if ((Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                    piVar62[-5] = 0xa31e7;\n                    operator_delete((void *)piVar62[-4]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;\n                    ppuVar57 = local_120;\n                  }\n                }\n              }" if (parenthesized_expression "(pbVar70[sVar33] == 0)" ( (binary_expression "pbVar70[sVar33] == 0" (subscript_expression "pbVar70[sVar33]" identifier [ identifier ]) == number_literal) )) (compound_statement "{\n                  pGVar13 = symtab->gc_;\n                  piVar62[-4] = (int)pbVar70;\n                  offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;\n                  piVar62[-5] = 0xa3075;\n                  sVar33 = strlen((char *)piVar62[-4]);\n                  piVar62[-1] = 0;\n                  piVar62[-2] = (int)(pbVar70 + sVar33);\n                  piVar62[-3] = (int)pbVar70;\n                  piVar62[-4] = (int)&offset;\n                  piVar62[-5] = 0xa3089;\n                  std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                  _M_construct<char_const*>();\n                  p_Var53 = offset._4_4_;\n                  pSVar51 = (Sized_relobj_file<64,_false> *)offset;\n                  p_Var52 = (pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header\n                            ._M_parent;\n                  p_Var73 = &(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.\n                             _M_header;\n                  shdr_2.p_ = (Shdr_data<64> *)this;\n                  local_174 = p_Var73;\n                  if (p_Var52 == (_Base_ptr)0x0) {\nLAB_000a320c:\n                    piVar62[-3] = (int)&local_f1;\n                    piVar62[-4] = (int)&local_e8;\n                    piVar62[-5] = (int)&std::piecewise_construct;\n                    local_e8 = &offset;\n                    piVar62[-6] = (int)p_Var73;\n                    piVar62[-7] = (int)&pGVar13->cident_sections_;\n                    piVar62[-8] = (int)local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    piVar62[-9] = 0xa324d;\n                    std::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::tuple<>_>\n                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left;\n                  local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                  piVar62[-1] = (int)p_Var36;\n                  piVar62[-2] = (int)&shdr_2;\n                  piVar62[-3] = local_170;\n                  piVar62[-4] = (int)ppuVar57;\n                  piVar62[-5] = 0xa31b4;\n                  p_Var37 = std::\n                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);\n                  if ((p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {\n                    piVar62[-4] = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    piVar62[-5] = 0xa32a8;\n                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);\n                    *pp_Var38 = (_func_int_varargs *)0x0;\n                    pp_Var38[1] = (_func_int_varargs *)this;\n                    pp_Var38[2] = (_func_int_varargs *)uVar69;\n                    local_e4 = local_174[3]._M_right;\n                    piVar62[-4] = 1;\n                    piVar62[-5] = (int)local_174[3]._M_parent;\n                    piVar62[-6] = (int)local_174[2]._M_right;\n                    piVar62[-7] = (int)&local_174[3]._M_left;\n                    piVar62[-8] = (int)local_10c;\n                    piVar62[-9] = 0xa32eb;\n                    std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }\n                    pp_Var38[3] = p_Var36;\n                    ppuVar57 = (undefined **)(local_170 * 4);\n                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];\n                    if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }\n                    local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);\n                  }\n                  if ((Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                    piVar62[-5] = 0xa31e7;\n                    operator_delete((void *)piVar62[-4]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;\n                    ppuVar57 = local_120;\n                  }\n                }\n              }" { (expression_statement "pGVar13 = symtab->gc_;" (assignment_expression "pGVar13 = symtab->gc_" identifier = (field_expression "symtab->gc_" identifier -> field_identifier)) ;) (expression_statement "piVar62[-4] = (int)pbVar70;" (assignment_expression "piVar62[-4] = (int)pbVar70" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;" (assignment_expression "offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84" (field_expression "offset._0_4_" identifier . field_identifier) = (binary_expression "(Sized_relobj_file<64,_false> *)&stack0xffffff84" (parenthesized_expression "(Sized_relobj_file<64,_false> *)" ( (comma_expression "Sized_relobj_file<64,_false> *" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) & identifier)) ;) (expression_statement "piVar62[-5] = 0xa3075;" (assignment_expression "piVar62[-5] = 0xa3075" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "sVar33 = strlen((char *)piVar62[-4]);" (assignment_expression "sVar33 = strlen((char *)piVar62[-4])" identifier = (call_expression "strlen((char *)piVar62[-4])" identifier (argument_list "((char *)piVar62[-4])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) )))) ;) (expression_statement "piVar62[-1] = 0;" (assignment_expression "piVar62[-1] = 0" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-2] = (int)(pbVar70 + sVar33);" (assignment_expression "piVar62[-2] = (int)(pbVar70 + sVar33)" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)(pbVar70 + sVar33)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pbVar70 + sVar33)" ( (binary_expression "pbVar70 + sVar33" identifier + identifier) )))) ;) (expression_statement "piVar62[-3] = (int)pbVar70;" (assignment_expression "piVar62[-3] = (int)pbVar70" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-4] = (int)&offset;" (assignment_expression "piVar62[-4] = (int)&offset" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&offset" & identifier))) ;) (expression_statement "piVar62[-5] = 0xa3089;" (assignment_expression "piVar62[-5] = 0xa3089" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (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 "p_Var53 = offset._4_4_;" (assignment_expression "p_Var53 = offset._4_4_" identifier = (field_expression "offset._4_4_" identifier . field_identifier)) ;) (expression_statement "pSVar51 = (Sized_relobj_file<64,_false> *)offset;" (assignment_expression "pSVar51 = (Sized_relobj_file<64,_false> *)offset" identifier = (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset" ( (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) ))) ;) (expression_statement "p_Var52 = (pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header\n                            ._M_parent;" (assignment_expression "p_Var52 = (pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header\n                            ._M_parent" identifier = (field_expression "(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header\n                            ._M_parent" (field_expression "(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header" (field_expression "(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header" (field_expression "(pGVar13->cident_sections_)._M_t._M_impl" (field_expression "(pGVar13->cident_sections_)._M_t" (parenthesized_expression "(pGVar13->cident_sections_)" ( (field_expression "pGVar13->cident_sections_" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier)) ;) (expression_statement "p_Var73 = &(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.\n                             _M_header;" (assignment_expression "p_Var73 = &(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.\n                             _M_header" identifier = (pointer_expression "&(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.\n                             _M_header" & (field_expression "(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.\n                             _M_header" (field_expression "(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header" (field_expression "(pGVar13->cident_sections_)._M_t._M_impl" (field_expression "(pGVar13->cident_sections_)._M_t" (parenthesized_expression "(pGVar13->cident_sections_)" ( (field_expression "pGVar13->cident_sections_" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) . field_identifier))) ;) (expression_statement "shdr_2.p_ = (Shdr_data<64> *)this;" (assignment_expression "shdr_2.p_ = (Shdr_data<64> *)this" (field_expression "shdr_2.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)this" ( (binary_expression "Shdr_data<64> *)this" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)this" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "local_174 = p_Var73;" (assignment_expression "local_174 = p_Var73" identifier = identifier) ;) (if_statement "if (p_Var52 == (_Base_ptr)0x0) {\nLAB_000a320c:\n                    piVar62[-3] = (int)&local_f1;\n                    piVar62[-4] = (int)&local_e8;\n                    piVar62[-5] = (int)&std::piecewise_construct;\n                    local_e8 = &offset;\n                    piVar62[-6] = (int)p_Var73;\n                    piVar62[-7] = (int)&pGVar13->cident_sections_;\n                    piVar62[-8] = (int)local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    piVar62[-9] = 0xa324d;\n                    std::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::tuple<>_>\n                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left;\n                  local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                  piVar62[-1] = (int)p_Var36;\n                  piVar62[-2] = (int)&shdr_2;\n                  piVar62[-3] = local_170;\n                  piVar62[-4] = (int)ppuVar57;\n                  piVar62[-5] = 0xa31b4;\n                  p_Var37 = std::\n                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);\n                  if ((p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {\n                    piVar62[-4] = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    piVar62[-5] = 0xa32a8;\n                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);\n                    *pp_Var38 = (_func_int_varargs *)0x0;\n                    pp_Var38[1] = (_func_int_varargs *)this;\n                    pp_Var38[2] = (_func_int_varargs *)uVar69;\n                    local_e4 = local_174[3]._M_right;\n                    piVar62[-4] = 1;\n                    piVar62[-5] = (int)local_174[3]._M_parent;\n                    piVar62[-6] = (int)local_174[2]._M_right;\n                    piVar62[-7] = (int)&local_174[3]._M_left;\n                    piVar62[-8] = (int)local_10c;\n                    piVar62[-9] = 0xa32eb;\n                    std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }\n                    pp_Var38[3] = p_Var36;\n                    ppuVar57 = (undefined **)(local_170 * 4);\n                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];\n                    if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }\n                    local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);\n                  }\n                  if ((Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                    piVar62[-5] = 0xa31e7;\n                    operator_delete((void *)piVar62[-4]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;\n                    ppuVar57 = local_120;\n                  }\n                }" if (parenthesized_expression "(p_Var52 == (_Base_ptr)0x0)" ( (binary_expression "p_Var52 == (_Base_ptr)0x0" identifier == (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) (compound_statement "{\nLAB_000a320c:\n                    piVar62[-3] = (int)&local_f1;\n                    piVar62[-4] = (int)&local_e8;\n                    piVar62[-5] = (int)&std::piecewise_construct;\n                    local_e8 = &offset;\n                    piVar62[-6] = (int)p_Var73;\n                    piVar62[-7] = (int)&pGVar13->cident_sections_;\n                    piVar62[-8] = (int)local_100;\n                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */\n                    piVar62[-9] = 0xa324d;\n                    std::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::tuple<>_>\n                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left;\n                  local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                  piVar62[-1] = (int)p_Var36;\n                  piVar62[-2] = (int)&shdr_2;\n                  piVar62[-3] = local_170;\n                  piVar62[-4] = (int)ppuVar57;\n                  piVar62[-5] = 0xa31b4;\n                  p_Var37 = std::\n                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);\n                  if ((p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {\n                    piVar62[-4] = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    piVar62[-5] = 0xa32a8;\n                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);\n                    *pp_Var38 = (_func_int_varargs *)0x0;\n                    pp_Var38[1] = (_func_int_varargs *)this;\n                    pp_Var38[2] = (_func_int_varargs *)uVar69;\n                    local_e4 = local_174[3]._M_right;\n                    piVar62[-4] = 1;\n                    piVar62[-5] = (int)local_174[3]._M_parent;\n                    piVar62[-6] = (int)local_174[2]._M_right;\n                    piVar62[-7] = (int)&local_174[3]._M_left;\n                    piVar62[-8] = (int)local_10c;\n                    piVar62[-9] = 0xa32eb;\n                    std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }\n                    pp_Var38[3] = p_Var36;\n                    ppuVar57 = (undefined **)(local_170 * 4);\n                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];\n                    if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }\n                    local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);\n                  }\n                  if ((Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                    piVar62[-5] = 0xa31e7;\n                    operator_delete((void *)piVar62[-4]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;\n                    ppuVar57 = local_120;\n                  }\n                }" { (labeled_statement "LAB_000a320c:\n                    piVar62[-3] = (int)&local_f1;" statement_identifier : (expression_statement "piVar62[-3] = (int)&local_f1;" (assignment_expression "piVar62[-3] = (int)&local_f1" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)&local_f1" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_f1" & identifier))) ;)) (expression_statement "piVar62[-4] = (int)&local_e8;" (assignment_expression "piVar62[-4] = (int)&local_e8" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&local_e8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_e8" & identifier))) ;) (expression_statement "piVar62[-5] = (int)&std::piecewise_construct;" (assignment_expression "piVar62[-5] = (int)&std" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = (cast_expression "(int)&std" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&std" & identifier))) (ERROR "::piecewise_construct" : : identifier) ;) (expression_statement "local_e8 = &offset;" (assignment_expression "local_e8 = &offset" identifier = (pointer_expression "&offset" & identifier)) ;) (expression_statement "piVar62[-6] = (int)p_Var73;" (assignment_expression "piVar62[-6] = (int)p_Var73" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) = (cast_expression "(int)p_Var73" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-7] = (int)&pGVar13->cident_sections_;" (assignment_expression "piVar62[-7] = (int)&pGVar13->cident_sections_" (subscript_expression "piVar62[-7]" identifier [ number_literal ]) = (cast_expression "(int)&pGVar13->cident_sections_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pGVar13->cident_sections_" & (field_expression "pGVar13->cident_sections_" identifier -> field_identifier)))) ;) (expression_statement "piVar62[-8] = (int)local_100;" (assignment_expression "piVar62[-8] = (int)local_100" (subscript_expression "piVar62[-8]" identifier [ number_literal ]) = (cast_expression "(int)local_100" ( (type_descriptor "int" primitive_type) ) identifier)) ;) comment (expression_statement "piVar62[-9] = 0xa324d;" (assignment_expression "piVar62[-9] = 0xa324d" (subscript_expression "piVar62[-9]" identifier [ number_literal ]) = number_literal) ;) (ERROR "std::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::" (comma_expression "std::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std" identifier (ERROR "::\n                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>" : : (binary_expression "_Rb_tree<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) : : (binary_expression "pair<const_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) : : (binary_expression "unordered_set<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_gold" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>,_std" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>_>_>,_std" (binary_expression "Relobj*,_unsigned_int>_>_>_" (binary_expression "Relobj*,_unsigned_int>_>_" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "_Select1st<std" identifier < identifier) : : (binary_expression "pair<const_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) : : (binary_expression "unordered_set<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_gold" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>,_std" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>_>_>_>,_std" (binary_expression "Relobj*,_unsigned_int>_>_>_>_" (binary_expression "Relobj*,_unsigned_int>_>_>_" (binary_expression "Relobj*,_unsigned_int>_>_" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "less<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) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_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) : : (binary_expression "unordered_set<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_gold" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>,_std" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique<const_std" (binary_expression "Relobj*,_unsigned_int>_>_>_>_>_>\n                    ::\n                    _M_emplace_hint_unique" (binary_expression "Relobj*,_unsigned_int>_>_>_>_>_" (binary_expression "Relobj*,_unsigned_int>_>_>_>_" (binary_expression "Relobj*,_unsigned_int>_>_>_" (binary_expression "Relobj*,_unsigned_int>_>_" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > identifier) > identifier) > identifier) > identifier) > (ERROR "::" : :) identifier) < identifier) : : (binary_expression "piecewise_construct_t&,_std" identifier & (ERROR "," ,) identifier) : : (binary_expression "tuple<const_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) > (pointer_expression "&>,_std" & (ERROR ">," > ,) identifier)) : :) (expression_statement "tuple<>_>\n                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left;" (binary_expression "tuple<>_>\n                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left" (binary_expression "tuple<>_" identifier < (ERROR ">" >) identifier) > (parenthesized_expression "((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left" ( (binary_expression "(_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)&local_174[2]._M_left" (parenthesized_expression "(_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);\n                  ppuVar57 = (undefined **)" ( (ERROR "_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*," (binary_expression "_Rb_tree<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" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "pair<const_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" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "unordered_set<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>,_gold" identifier > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>,_std" (binary_expression "_unsigned_int>_" identifier > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>_>_>,_std" (binary_expression "_unsigned_int>_>_>_" (binary_expression "_unsigned_int>_>_" (binary_expression "_unsigned_int>_" identifier > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "_Select1st<std" identifier < identifier) : : (binary_expression "pair<const_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" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "unordered_set<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>,_gold" identifier > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>,_std" (binary_expression "_unsigned_int>_" identifier > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>_>_>_>,_std" (binary_expression "_unsigned_int>_>_>_>_" (binary_expression "_unsigned_int>_>_>_" (binary_expression "_unsigned_int>_>_" (binary_expression "_unsigned_int>_" identifier > identifier) > identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "less<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 "allocator<std" identifier < identifier) : : (binary_expression "pair<const_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" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "unordered_set<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>,_gold" identifier > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>,_std" (binary_expression "_unsigned_int>_" identifier > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) ,) (comma_expression "_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8],(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this)" (binary_expression "_unsigned_int>_>_>_>_>_>\n                                *)piVar62[-8]" (binary_expression "_unsigned_int>_>_>_>_>_" (binary_expression "_unsigned_int>_>_>_>_" (binary_expression "_unsigned_int>_>_>_" (binary_expression "_unsigned_int>_>_" (binary_expression "_unsigned_int>_" identifier > identifier) > identifier) > identifier) > identifier) > identifier) > (pointer_expression "*)piVar62[-8]" * (ERROR ")" )) (subscript_expression "piVar62[-8]" identifier [ number_literal ]))) , (comma_expression "(_Base_ptr)piVar62[-7],\n                               (piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this)" (cast_expression "(_Base_ptr)piVar62[-7]" ( (type_descriptor "_Base_ptr" type_identifier) ) (subscript_expression "piVar62[-7]" identifier [ number_literal ])) , (comma_expression "(piecewise_construct_t *)piVar62[-6],\n                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this)" (cast_expression "(piecewise_construct_t *)piVar62[-6]" ( (type_descriptor "piecewise_construct_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-6]" identifier [ number_literal ])) , (call_expression "(tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this)" (parenthesized_expression "(tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else {\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }\n                  p_Var36 = (_func_int_varargs *)" ( (ERROR "tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4]);\n                    local_174 = local_100[0];\n                  }\n                  else" (comma_expression "tuple<const_std::__cxx11::basic_string<char,_std" (binary_expression "tuple<const_std::__cxx11::basic_string<char" (binary_expression "tuple<const_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) : : (comma_expression "allocator<char>_>&>\n                                *)piVar62[-5],(tuple<> *)piVar62[-4])" (binary_expression "allocator<char>_>&>\n                                *)piVar62[-5]" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (pointer_expression "&>\n                                *)piVar62[-5]" & (ERROR ">" >) (pointer_expression "*)piVar62[-5]" * (ERROR ")" )) (subscript_expression "piVar62[-5]" identifier [ number_literal ])))) , (parenthesized_expression "(tuple<> *)piVar62[-4])" ( (binary_expression "tuple<> *)piVar62[-4]" identifier < (ERROR ">" >) (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) ))) ; (assignment_expression "local_174 = local_100[0]" identifier = (subscript_expression "local_100[0]" identifier [ number_literal ])) ; } else) (compound_statement "{\nLAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);\n                    bVar29 = p_Var73 == local_174;\n                    p_Var73 = local_174;\n                    if (bVar29) goto LAB_000a320c;\n                    p_Var52 = local_174[1]._M_parent;\n                    p_Var35 = p_Var52;\n                    if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }\n                    if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar50 < 0) goto LAB_000a320c;\n                  }" { (labeled_statement "LAB_000a30e5:\n                    do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);" statement_identifier : (do_statement "do {\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    } while (p_Var66->_M_right != (_Base_ptr)0x0);" do (compound_statement "{\n                      p_Var66 = p_Var52;\n                      p_Var52 = p_Var66[1]._M_parent;\n                      p_Var35 = p_Var53;\n                      if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }\n                      if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      p_Var52 = p_Var66->_M_right;\n                    }" { (expression_statement "p_Var66 = p_Var52;" (assignment_expression "p_Var66 = p_Var52" identifier = identifier) ;) (expression_statement "p_Var52 = p_Var66[1]._M_parent;" (assignment_expression "p_Var52 = p_Var66[1]._M_parent" identifier = (field_expression "p_Var66[1]._M_parent" (subscript_expression "p_Var66[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "p_Var35 = p_Var53;" (assignment_expression "p_Var35 = p_Var53" identifier = identifier) ;) (if_statement "if (p_Var52 <= p_Var53) {\n                        p_Var35 = p_Var52;\n                      }" if (parenthesized_expression "(p_Var52 <= p_Var53)" ( (binary_expression "p_Var52 <= p_Var53" identifier <= identifier) )) (compound_statement "{\n                        p_Var35 = p_Var52;\n                      }" { (expression_statement "p_Var35 = p_Var52;" (assignment_expression "p_Var35 = p_Var52" identifier = identifier) ;) })) (if_statement "if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }\n                      else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }" if (parenthesized_expression "(p_Var35 == (_Base_ptr)0x0)" ( (binary_expression "p_Var35 == (_Base_ptr)0x0" identifier == (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) (compound_statement "{\nLAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;\n                      }" { (labeled_statement "LAB_000a3116:\n                        iVar50 = (int)p_Var52 - (int)p_Var53;" statement_identifier : (expression_statement "iVar50 = (int)p_Var52 - (int)p_Var53;" (assignment_expression "iVar50 = (int)p_Var52 - (int)p_Var53" identifier = (binary_expression "(int)p_Var52 - (int)p_Var53" (cast_expression "(int)p_Var52" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)p_Var53" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }" else (compound_statement "{\n                        piVar62[-2] = (int)p_Var35;\n                        piVar62[-3] = (int)pSVar51;\n                        piVar62[-4] = p_Var66[1]._M_color;\n                        piVar62[-5] = 0xa310f;\n                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                        if (iVar50 == 0) goto LAB_000a3116;\n                      }" { (expression_statement "piVar62[-2] = (int)p_Var35;" (assignment_expression "piVar62[-2] = (int)p_Var35" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)p_Var35" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-3] = (int)pSVar51;" (assignment_expression "piVar62[-3] = (int)pSVar51" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)pSVar51" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-4] = p_Var66[1]._M_color;" (assignment_expression "piVar62[-4] = p_Var66[1]._M_color" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (field_expression "p_Var66[1]._M_color" (subscript_expression "p_Var66[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "piVar62[-5] = 0xa310f;" (assignment_expression "piVar62[-5] = 0xa310f" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);" (assignment_expression "iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2])" identifier = (call_expression "memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2])" identifier (argument_list "((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2])" ( (cast_expression "(void *)piVar62[-4]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (cast_expression "(void *)piVar62[-3]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (subscript_expression "piVar62[-2]" identifier [ number_literal ]) )))) ;) (if_statement "if (iVar50 == 0) goto LAB_000a3116;" if (parenthesized_expression "(iVar50 == 0)" ( (binary_expression "iVar50 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000a3116;" goto statement_identifier ;)) }))) (if_statement "if (-1 < iVar50) {\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }" if (parenthesized_expression "(-1 < iVar50)" ( (binary_expression "-1 < iVar50" number_literal < identifier) )) (compound_statement "{\n                        p_Var52 = p_Var66->_M_left;\n                        local_174 = p_Var66;\n                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;\n                        goto LAB_000a30e5;\n                      }" { (expression_statement "p_Var52 = p_Var66->_M_left;" (assignment_expression "p_Var52 = p_Var66->_M_left" identifier = (field_expression "p_Var66->_M_left" identifier -> field_identifier)) ;) (expression_statement "local_174 = p_Var66;" (assignment_expression "local_174 = p_Var66" identifier = identifier) ;) (if_statement "if (p_Var66->_M_left == (_Base_ptr)0x0) break;" if (parenthesized_expression "(p_Var66->_M_left == (_Base_ptr)0x0)" ( (binary_expression "p_Var66->_M_left == (_Base_ptr)0x0" (field_expression "p_Var66->_M_left" identifier -> field_identifier) == (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) (break_statement "break;" break ;)) (goto_statement "goto LAB_000a30e5;" goto statement_identifier ;) })) (expression_statement "p_Var52 = p_Var66->_M_right;" (assignment_expression "p_Var52 = p_Var66->_M_right" identifier = (field_expression "p_Var66->_M_right" identifier -> field_identifier)) ;) }) while (parenthesized_expression "(p_Var66->_M_right != (_Base_ptr)0x0)" ( (binary_expression "p_Var66->_M_right != (_Base_ptr)0x0" (field_expression "p_Var66->_M_right" identifier -> field_identifier) != (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) ;)) (expression_statement "bVar29 = p_Var73 == local_174;" (assignment_expression "bVar29 = p_Var73 == local_174" identifier = (binary_expression "p_Var73 == local_174" identifier == identifier)) ;) (expression_statement "p_Var73 = local_174;" (assignment_expression "p_Var73 = local_174" identifier = identifier) ;) (if_statement "if (bVar29) goto LAB_000a320c;" if (parenthesized_expression "(bVar29)" ( identifier )) (goto_statement "goto LAB_000a320c;" goto statement_identifier ;)) (expression_statement "p_Var52 = local_174[1]._M_parent;" (assignment_expression "p_Var52 = local_174[1]._M_parent" identifier = (field_expression "local_174[1]._M_parent" (subscript_expression "local_174[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "p_Var35 = p_Var52;" (assignment_expression "p_Var35 = p_Var52" identifier = identifier) ;) (if_statement "if (p_Var53 <= p_Var52) {\n                      p_Var35 = p_Var53;\n                    }" if (parenthesized_expression "(p_Var53 <= p_Var52)" ( (binary_expression "p_Var53 <= p_Var52" identifier <= identifier) )) (compound_statement "{\n                      p_Var35 = p_Var53;\n                    }" { (expression_statement "p_Var35 = p_Var53;" (assignment_expression "p_Var35 = p_Var53" identifier = identifier) ;) })) (if_statement "if (p_Var35 == (_Base_ptr)0x0) {\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }\n                    else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }" if (parenthesized_expression "(p_Var35 == (_Base_ptr)0x0)" ( (binary_expression "p_Var35 == (_Base_ptr)0x0" identifier == (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) (compound_statement "{\nLAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;\n                    }" { (labeled_statement "LAB_000a3174:\n                      iVar50 = (int)p_Var53 - (int)p_Var52;" statement_identifier : (expression_statement "iVar50 = (int)p_Var53 - (int)p_Var52;" (assignment_expression "iVar50 = (int)p_Var53 - (int)p_Var52" identifier = (binary_expression "(int)p_Var53 - (int)p_Var52" (cast_expression "(int)p_Var53" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)p_Var52" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }" else (compound_statement "{\n                      piVar62[-2] = (int)p_Var35;\n                      piVar62[-3] = local_174[1]._M_color;\n                      piVar62[-4] = (int)pSVar51;\n                      piVar62[-5] = 0xa3167;\n                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);\n                      if (iVar50 == 0) goto LAB_000a3174;\n                    }" { (expression_statement "piVar62[-2] = (int)p_Var35;" (assignment_expression "piVar62[-2] = (int)p_Var35" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)p_Var35" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-3] = local_174[1]._M_color;" (assignment_expression "piVar62[-3] = local_174[1]._M_color" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (field_expression "local_174[1]._M_color" (subscript_expression "local_174[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "piVar62[-4] = (int)pSVar51;" (assignment_expression "piVar62[-4] = (int)pSVar51" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)pSVar51" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-5] = 0xa3167;" (assignment_expression "piVar62[-5] = 0xa3167" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);" (assignment_expression "iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2])" identifier = (call_expression "memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2])" identifier (argument_list "((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2])" ( (cast_expression "(void *)piVar62[-4]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (cast_expression "(void *)piVar62[-3]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (subscript_expression "piVar62[-2]" identifier [ number_literal ]) )))) ;) (if_statement "if (iVar50 == 0) goto LAB_000a3174;" if (parenthesized_expression "(iVar50 == 0)" ( (binary_expression "iVar50 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000a3174;" goto statement_identifier ;)) }))) (if_statement "if (iVar50 < 0) goto LAB_000a320c;" if (parenthesized_expression "(iVar50 < 0)" ( (binary_expression "iVar50 < 0" identifier < number_literal) )) (goto_statement "goto LAB_000a320c;" goto statement_identifier ;)) }) (ERROR "p_Var36 = (_func_int_varargs *" identifier = ( identifier *) )) (argument_list "(uVar69 ^ (uint)this)" ( (binary_expression "uVar69 ^ (uint)this" identifier ^ (cast_expression "(uint)this" ( (type_descriptor "uint" type_identifier) ) identifier)) )))))) (ERROR ";\n                  ppuVar57 = (undefined **" ; identifier = ( identifier * *) )) & (field_expression "local_174[2]._M_left" (subscript_expression "local_174[2]" identifier [ number_literal ]) . field_identifier)) ))) ;) (expression_statement "local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;" (assignment_expression "local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right" identifier = (binary_expression "(uint)p_Var36 % (uint)local_174[2]._M_right" (cast_expression "(uint)p_Var36" ( (type_descriptor "uint" type_identifier) ) identifier) % (cast_expression "(uint)local_174[2]._M_right" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_174[2]._M_right" (subscript_expression "local_174[2]" identifier [ number_literal ]) . field_identifier)))) ;) (expression_statement "piVar62[-1] = (int)p_Var36;" (assignment_expression "piVar62[-1] = (int)p_Var36" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = (cast_expression "(int)p_Var36" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-2] = (int)&shdr_2;" (assignment_expression "piVar62[-2] = (int)&shdr_2" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)&shdr_2" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&shdr_2" & identifier))) ;) (expression_statement "piVar62[-3] = local_170;" (assignment_expression "piVar62[-3] = local_170" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-4] = (int)ppuVar57;" (assignment_expression "piVar62[-4] = (int)ppuVar57" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)ppuVar57" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-5] = 0xa31b4;" (assignment_expression "piVar62[-5] = 0xa31b4" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (ERROR "p_Var37 = std::\n                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::" (assignment_expression "p_Var37 = std" identifier = identifier) : : (binary_expression "_Hashtable<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_std" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_std" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>,_std" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold" identifier (ERROR "::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>" : : (comma_expression "_Identity,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : identifier * , (binary_expression "_unsigned_int>_" identifier > identifier) >) , identifier) : : (comma_expression "Section_id_hash,_std" identifier , 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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);" 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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);" 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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);" 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                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);" statement_identifier : (ERROR ":" :) (expression_statement "_Hashtable_traits<true,_true,_true>_>\n                            ::_M_find_before_node\n                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]);" (comma_expression "_Hashtable_traits<true,_true,_true>_>\n                            ::_M_find_before_node\n                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1])" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_true,_true>_>\n                            ::_M_find_before_node\n                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1])" identifier , (binary_expression "_true>_>\n                            ::_M_find_before_node\n                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1])" (binary_expression "_true>_" identifier > identifier) > (ERROR "::" : :) (call_expression "_M_find_before_node\n                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1])" identifier (argument_list "((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1])" ( (parenthesized_expression "(_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1])" ( (ERROR "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::" (comma_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold" (binary_expression "_Hashtable<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::__detail::_Identity" : : identifier : : identifier) , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>,_gold" (binary_expression "_unsigned_int>_" identifier > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , 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                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_true,_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]" identifier , (comma_expression "_true>_>\n                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]" (binary_expression "_true>_>\n                                        *)piVar62[-4]" (binary_expression "_true>_" identifier > identifier) > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (comma_expression "piVar62[-3],(key_type *)piVar62[-2],\n                                       piVar62[-1]" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (comma_expression "(key_type *)piVar62[-2],\n                                       piVar62[-1]" (cast_expression "(key_type *)piVar62[-2]" ( (type_descriptor "key_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) , (subscript_expression "piVar62[-1]" identifier [ number_literal ])))))) )) )))))) ;))))) (if_statement "if ((p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {\n                    piVar62[-4] = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    piVar62[-5] = 0xa32a8;\n                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);\n                    *pp_Var38 = (_func_int_varargs *)0x0;\n                    pp_Var38[1] = (_func_int_varargs *)this;\n                    pp_Var38[2] = (_func_int_varargs *)uVar69;\n                    local_e4 = local_174[3]._M_right;\n                    piVar62[-4] = 1;\n                    piVar62[-5] = (int)local_174[3]._M_parent;\n                    piVar62[-6] = (int)local_174[2]._M_right;\n                    piVar62[-7] = (int)&local_174[3]._M_left;\n                    piVar62[-8] = (int)local_10c;\n                    piVar62[-9] = 0xa32eb;\n                    std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }\n                    pp_Var38[3] = p_Var36;\n                    ppuVar57 = (undefined **)(local_170 * 4);\n                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];\n                    if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }\n                    local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);\n                  }" if (parenthesized_expression "((p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0))" ( (binary_expression "(p_Var37 == (__node_base *)0x0) ||\n                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0))" (parenthesized_expression "(p_Var37 == (__node_base *)0x0)" ( (binary_expression "p_Var37 == (__node_base *)0x0" identifier == (cast_expression "(__node_base *)0x0" ( (type_descriptor "__node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0))" ( (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)" ( (comma_expression "Shdr_data<64> *)extraout_ECX_07,\n                     p_Var37->_M_nxt == (_Hash_node_base *)0x0" (binary_expression "Shdr_data<64> *)extraout_ECX_07" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_07" * (ERROR ")" )) identifier)) , (binary_expression "p_Var37->_M_nxt == (_Hash_node_base *)0x0" (field_expression "p_Var37->_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                    piVar62[-4] = 0x10;\n                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */\n                    piVar62[-5] = 0xa32a8;\n                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);\n                    *pp_Var38 = (_func_int_varargs *)0x0;\n                    pp_Var38[1] = (_func_int_varargs *)this;\n                    pp_Var38[2] = (_func_int_varargs *)uVar69;\n                    local_e4 = local_174[3]._M_right;\n                    piVar62[-4] = 1;\n                    piVar62[-5] = (int)local_174[3]._M_parent;\n                    piVar62[-6] = (int)local_174[2]._M_right;\n                    piVar62[-7] = (int)&local_174[3]._M_left;\n                    piVar62[-8] = (int)local_10c;\n                    piVar62[-9] = 0xa32eb;\n                    std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }\n                    pp_Var38[3] = p_Var36;\n                    ppuVar57 = (undefined **)(local_170 * 4);\n                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];\n                    if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }\n                    local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);\n                  }" { (expression_statement "piVar62[-4] = 0x10;" (assignment_expression "piVar62[-4] = 0x10" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = number_literal) ;) comment (expression_statement "piVar62[-5] = 0xa32a8;" (assignment_expression "piVar62[-5] = 0xa32a8" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);" (assignment_expression "pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4])" identifier = (cast_expression "(_func_int_varargs **)operator_new(piVar62[-4])" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "operator_new(piVar62[-4])" identifier (argument_list "(piVar62[-4])" ( (subscript_expression "piVar62[-4]" identifier [ number_literal ]) ))))) ;) (expression_statement "*pp_Var38 = (_func_int_varargs *)0x0;" (assignment_expression "*pp_Var38 = (_func_int_varargs *)0x0" (pointer_expression "*pp_Var38" * identifier) = (cast_expression "(_func_int_varargs *)0x0" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pp_Var38[1] = (_func_int_varargs *)this;" (assignment_expression "pp_Var38[1] = (_func_int_varargs *)this" (subscript_expression "pp_Var38[1]" identifier [ number_literal ]) = (cast_expression "(_func_int_varargs *)this" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pp_Var38[2] = (_func_int_varargs *)uVar69;" (assignment_expression "pp_Var38[2] = (_func_int_varargs *)uVar69" (subscript_expression "pp_Var38[2]" identifier [ number_literal ]) = (cast_expression "(_func_int_varargs *)uVar69" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_e4 = local_174[3]._M_right;" (assignment_expression "local_e4 = local_174[3]._M_right" identifier = (field_expression "local_174[3]._M_right" (subscript_expression "local_174[3]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "piVar62[-4] = 1;" (assignment_expression "piVar62[-4] = 1" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-5] = (int)local_174[3]._M_parent;" (assignment_expression "piVar62[-5] = (int)local_174[3]._M_parent" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = (cast_expression "(int)local_174[3]._M_parent" ( (type_descriptor "int" primitive_type) ) (field_expression "local_174[3]._M_parent" (subscript_expression "local_174[3]" identifier [ number_literal ]) . field_identifier))) ;) (expression_statement "piVar62[-6] = (int)local_174[2]._M_right;" (assignment_expression "piVar62[-6] = (int)local_174[2]._M_right" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) = (cast_expression "(int)local_174[2]._M_right" ( (type_descriptor "int" primitive_type) ) (field_expression "local_174[2]._M_right" (subscript_expression "local_174[2]" identifier [ number_literal ]) . field_identifier))) ;) (expression_statement "piVar62[-7] = (int)&local_174[3]._M_left;" (assignment_expression "piVar62[-7] = (int)&local_174[3]._M_left" (subscript_expression "piVar62[-7]" identifier [ number_literal ]) = (cast_expression "(int)&local_174[3]._M_left" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_174[3]._M_left" & (field_expression "local_174[3]._M_left" (subscript_expression "local_174[3]" identifier [ number_literal ]) . field_identifier)))) ;) (expression_statement "piVar62[-8] = (int)local_10c;" (assignment_expression "piVar62[-8] = (int)local_10c" (subscript_expression "piVar62[-8]" identifier [ number_literal ]) = (cast_expression "(int)local_10c" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-9] = 0xa32eb;" (assignment_expression "piVar62[-9] = 0xa32eb" (subscript_expression "piVar62[-9]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "std::__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);" statement_identifier : (ERROR ":" :) (labeled_statement "__detail::_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);" statement_identifier : (ERROR ":" :) (labeled_statement "_Prime_rehash_policy::_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);" statement_identifier : (ERROR ":" :) (expression_statement "_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6]);" (call_expression "_M_need_rehash\n                              (piVar62[-8],piVar62[-7],piVar62[-6])" identifier (argument_list "(piVar62[-8],piVar62[-7],piVar62[-6])" ( (subscript_expression "piVar62[-8]" identifier [ number_literal ]) , (subscript_expression "piVar62[-7]" identifier [ number_literal ]) , (subscript_expression "piVar62[-6]" identifier [ number_literal ]) ))) ;)))) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_09" ( (binary_expression "Shdr_data<64> *)extraout_ECX_09" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_09" * (ERROR ")" )) identifier)) ))) ;) (if_statement "if (local_10c[0] != '\0') {\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }" if (parenthesized_expression "(local_10c[0] != '\0')" ( (binary_expression "local_10c[0] != '\0'" (subscript_expression "local_10c[0]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      piVar62[-2] = (int)&local_e4;\n                      piVar62[-3] = local_108;\n                      piVar62[-4] = (int)ppuVar57;\n                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */\n                      piVar62[-5] = 0xa3696;\n                      std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);\n                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;\n                    }" { (expression_statement "piVar62[-2] = (int)&local_e4;" (assignment_expression "piVar62[-2] = (int)&local_e4" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)&local_e4" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_e4" & identifier))) ;) (expression_statement "piVar62[-3] = local_108;" (assignment_expression "piVar62[-3] = local_108" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-4] = (int)ppuVar57;" (assignment_expression "piVar62[-4] = (int)ppuVar57" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)ppuVar57" ( (type_descriptor "int" primitive_type) ) identifier)) ;) comment (expression_statement "piVar62[-5] = 0xa3696;" (assignment_expression "piVar62[-5] = 0xa3696" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (ERROR "std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::" (comma_expression "std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std" identifier (ERROR "::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>" : : (binary_expression "_Hashtable<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : identifier * , identifier >) , identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_std" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>,_std" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold" identifier (ERROR "::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>" : : (comma_expression "_Identity,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : identifier * , (binary_expression "_unsigned_int>_" identifier > identifier) >) , identifier) : : (comma_expression "Section_id_hash,_std" identifier , 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_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);" 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_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);" 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_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);" 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_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);" statement_identifier : (ERROR ":" :) (expression_statement "_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);" (comma_expression "_Hashtable_traits<true,_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2])" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_true,_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2])" identifier , (binary_expression "_true>_>\n                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2])" (binary_expression "_true>_" identifier > identifier) > (ERROR "::" : :) (call_expression "_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2])" identifier (argument_list "((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2])" ( (parenthesized_expression "(_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2])" ( (ERROR "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::" (comma_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold" (binary_expression "_Hashtable<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::__detail::_Identity" : : identifier : : identifier) , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>,_gold" (binary_expression "_unsigned_int>_" identifier > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , 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                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_true,_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]" identifier , (comma_expression "_true>_>\n                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]" (binary_expression "_true>_>\n                                   *)piVar62[-4]" (binary_expression "_true>_" identifier > identifier) > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (comma_expression "piVar62[-3],(__rehash_state *)piVar62[-2]" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(__rehash_state *)piVar62[-2]" ( (type_descriptor "__rehash_state *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])))))) )) )))))) ;))))) (expression_statement "local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;" (assignment_expression "local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right" identifier = (binary_expression "(uint)p_Var36 % (uint)local_174[2]._M_right" (cast_expression "(uint)p_Var36" ( (type_descriptor "uint" type_identifier) ) identifier) % (cast_expression "(uint)local_174[2]._M_right" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_174[2]._M_right" (subscript_expression "local_174[2]" identifier [ number_literal ]) . field_identifier)))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_12" ( (binary_expression "Shdr_data<64> *)extraout_ECX_12" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_12" * (ERROR ")" )) identifier)) ))) ;) })) (expression_statement "pp_Var38[3] = p_Var36;" (assignment_expression "pp_Var38[3] = p_Var36" (subscript_expression "pp_Var38[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "ppuVar57 = (undefined **)(local_170 * 4);" (assignment_expression "ppuVar57 = (undefined **)(local_170 * 4)" identifier = (cast_expression "(undefined **)(local_170 * 4)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_170 * 4)" ( (binary_expression "local_170 * 4" identifier * number_literal) )))) ;) (expression_statement "piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];" (assignment_expression "piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170]" identifier = (cast_expression "(int *)(&(local_174[2]._M_left)->_M_color)[local_170]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "(&(local_174[2]._M_left)->_M_color)[local_170]" (parenthesized_expression "(&(local_174[2]._M_left)->_M_color)" ( (pointer_expression "&(local_174[2]._M_left)->_M_color" & (field_expression "(local_174[2]._M_left)->_M_color" (parenthesized_expression "(local_174[2]._M_left)" ( (field_expression "local_174[2]._M_left" (subscript_expression "local_174[2]" identifier [ number_literal ]) . field_identifier) )) -> field_identifier)) )) [ identifier ]))) ;) (if_statement "if (piVar14 == (int *)0x0) {\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }\n                    else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }" if (parenthesized_expression "(piVar14 == (int *)0x0)" ( (binary_expression "piVar14 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;\n                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;\n                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;\n                      if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }\n                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);\n                    }" { (expression_statement "*pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;" (assignment_expression "*pp_Var38 = (_func_int_varargs *)local_174[3]._M_color" (pointer_expression "*pp_Var38" * identifier) = (cast_expression "(_func_int_varargs *)local_174[3]._M_color" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_174[3]._M_color" (subscript_expression "local_174[3]" identifier [ number_literal ]) . field_identifier))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)local_174[2]._M_left" ( (binary_expression "Shdr_data<64> *)local_174[2]._M_left" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)local_174[2]._M_left" * (ERROR ")" )) (field_expression "local_174[2]._M_left" (subscript_expression "local_174[2]" identifier [ number_literal ]) . field_identifier))) ))) ;) (expression_statement "local_174[3]._M_color = (_Rb_tree_color)pp_Var38;" (assignment_expression "local_174[3]._M_color = (_Rb_tree_color)pp_Var38" (field_expression "local_174[3]._M_color" (subscript_expression "local_174[3]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_Rb_tree_color)pp_Var38" ( (type_descriptor "_Rb_tree_color" type_identifier) ) identifier)) ;) (if_statement "if (*pp_Var38 != (_func_int_varargs *)0x0) {\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }" if (parenthesized_expression "(*pp_Var38 != (_func_int_varargs *)0x0)" ( (binary_expression "*pp_Var38 != (_func_int_varargs *)0x0" (pointer_expression "*pp_Var38" * identifier) != (cast_expression "(_func_int_varargs *)0x0" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;\n                      }" { (expression_statement "(&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;" (parenthesized_expression "(&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38" ( (assignment_expression "&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38" (pointer_expression "&(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right]" & (subscript_expression "(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)\n                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right]" (parenthesized_expression "(((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)" ( (field_expression "((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object" (field_expression "((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "((Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false>)" ( (comma_expression "(Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64,_false" (binary_expression "(Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj<64" (field_expression "(Sized_relobj_file<64,_false> *)SVar49.p_)->\n                          super_Sized_relobj" (parenthesized_expression "(Sized_relobj_file<64,_false> *)SVar49.p_)" ( (comma_expression "Sized_relobj_file<64,_false> *)SVar49.p_" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)SVar49.p_" identifier > (pointer_expression "*)SVar49.p_" * (ERROR ")" )) (field_expression "SVar49.p_" identifier . field_identifier)))) )) -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) )) [ (binary_expression "*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right" (pointer_expression "*(uint *)(*pp_Var38 + 0xc)" * (cast_expression "(uint *)(*pp_Var38 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*pp_Var38 + 0xc)" ( (binary_expression "*pp_Var38 + 0xc" (pointer_expression "*pp_Var38" * identifier) + number_literal) )))) % (cast_expression "(uint)local_174[2]._M_right" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_174[2]._M_right" (subscript_expression "local_174[2]" identifier [ number_literal ]) . field_identifier))) ])) = identifier) )) ;) })) (expression_statement "(&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3);" (parenthesized_expression "(&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3)" ( (assignment_expression "&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170] =\n                           (_func_int_varargs **)(local_174 + 3)" (pointer_expression "&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170]" & (subscript_expression "(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)[local_170]" (parenthesized_expression "(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object)" ( (field_expression "((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object._vptr_Object" (field_expression "((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj.super_Object" (field_expression "((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)\n                        .super_Relobj" (parenthesized_expression "((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)" ( (comma_expression "(Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false" (binary_expression "(Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64" (field_expression "(Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj" (parenthesized_expression "(Sized_relobj_file<64,_false> *)SVar49.p_)" ( (comma_expression "Sized_relobj_file<64,_false> *)SVar49.p_" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)SVar49.p_" identifier > (pointer_expression "*)SVar49.p_" * (ERROR ")" )) (field_expression "SVar49.p_" identifier . field_identifier)))) )) -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) )) [ identifier ])) = (cast_expression "(_func_int_varargs **)(local_174 + 3)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_174 + 3)" ( (binary_expression "local_174 + 3" identifier + number_literal) )))) )) ;) }) (else_clause "else {\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }" else (compound_statement "{\n                      *pp_Var38 = (_func_int_varargs *)*piVar14;\n                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;\n                    }" { (expression_statement "*pp_Var38 = (_func_int_varargs *)*piVar14;" (assignment_expression "*pp_Var38 = (_func_int_varargs *)*piVar14" (pointer_expression "*pp_Var38" * identifier) = (cast_expression "(_func_int_varargs *)*piVar14" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (expression_statement "*(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38;" (assignment_expression "*(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =\n                           pp_Var38" (pointer_expression "*(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170]" * (cast_expression "(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170]" ( (type_descriptor "_func_int_varargs ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (subscript_expression "(&(local_174[2]._M_left)->_M_color)[local_170]" (parenthesized_expression "(&(local_174[2]._M_left)->_M_color)" ( (pointer_expression "&(local_174[2]._M_left)->_M_color" & (field_expression "(local_174[2]._M_left)->_M_color" (parenthesized_expression "(local_174[2]._M_left)" ( (field_expression "local_174[2]._M_left" (subscript_expression "local_174[2]" identifier [ number_literal ]) . field_identifier) )) -> field_identifier)) )) [ identifier ]))) = identifier) ;) }))) (expression_statement "local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);" (assignment_expression "local_174[3]._M_parent =\n                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1)" (field_expression "local_174[3]._M_parent" (subscript_expression "local_174[3]" identifier [ number_literal ]) . field_identifier) = (call_expression "(_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1)" (parenthesized_expression "(_Base_ptr)" ( identifier )) (argument_list "((int)&(local_174[3]._M_parent)->_M_color + 1)" ( (binary_expression "(int)&(local_174[3]._M_parent)->_M_color + 1" (cast_expression "(int)&(local_174[3]._M_parent)->_M_color" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(local_174[3]._M_parent)->_M_color" & (field_expression "(local_174[3]._M_parent)->_M_color" (parenthesized_expression "(local_174[3]._M_parent)" ( (field_expression "local_174[3]._M_parent" (subscript_expression "local_174[3]" identifier [ number_literal ]) . field_identifier) )) -> field_identifier))) + number_literal) )))) ;) })) (ERROR "if ((Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                    piVar62[-5] = 0xa31e7;\n                    operator_delete((void *)piVar62[-4]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;\n                    ppuVar57 = local_120;\n                  }" if ( ( (ERROR "Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (comma_expression "Sized_relobj_file<64,_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset !=\n                      (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier)) != (parenthesized_expression "(Sized_relobj_file<64,_false> *)&stack0xffffff84)" ( (comma_expression "Sized_relobj_file<64,_false> *)&stack0xffffff84" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)&stack0xffffff84" identifier > (pointer_expression "*)&stack0xffffff84" * (ERROR ")" )) (pointer_expression "&stack0xffffff84" & identifier)))) ))))) (compound_statement "{\n                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                    piVar62[-5] = 0xa31e7;\n                    operator_delete((void *)piVar62[-4]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;\n                    ppuVar57 = local_120;\n                  }" { (expression_statement "piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;" (assignment_expression "piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)(Sized_relobj_file<64,_false> *)offset" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset" ( (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) )))) ;) (expression_statement "piVar62[-5] = 0xa31e7;" (assignment_expression "piVar62[-5] = 0xa31e7" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "operator_delete((void *)piVar62[-4]);" (call_expression "operator_delete((void *)piVar62[-4])" identifier (argument_list "((void *)piVar62[-4])" ( (cast_expression "(void *)piVar62[-4]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) ))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_08" ( (binary_expression "Shdr_data<64> *)extraout_ECX_08" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_08" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "ppuVar57 = local_120;" (assignment_expression "ppuVar57 = local_120" identifier = identifier) ;) })) })) })) })) if ( (parenthesized_expression "(bVar3 == 0)" ( (binary_expression "bVar3 == 0" identifier == number_literal) )) || ( (parenthesized_expression "(local_124 != (Sized_relobj_file<64,_false> *)0x9 &&\n                (local_124 != (Sized_relobj_file<64,_false> *)0x4))))" ( (binary_expression "local_124 != (Sized_relobj_file<64,_false> *)0x9 &&\n                (local_124 != (Sized_relobj_file<64,_false> *)0x4)))" identifier != (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x9 &&\n                (local_124 != (Sized_relobj_file<64,_false> *)0x4)))" ( (comma_expression "Sized_relobj_file<64,_false> *)0x9 &&\n                (local_124 != (Sized_relobj_file<64,_false> *)0x4))" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x9 &&\n                (local_124 != (Sized_relobj_file<64,_false> *)0x4))" (binary_expression "_false> *)0x9" identifier > (pointer_expression "*)0x9" * (ERROR ")" )) number_literal)) && (parenthesized_expression "(local_124 != (Sized_relobj_file<64,_false> *)0x4))" ( (binary_expression "local_124 != (Sized_relobj_file<64,_false> *)0x4)" identifier != (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x4)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x4" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x4" identifier > (pointer_expression "*)0x4" * (ERROR ")" )) number_literal))) ))) )))) ))) )) (ERROR "{\n              if" { if) ( (ERROR "(local_124 != (Sized_relobj_file<64,_false> *)0x11) || (bVar4 == false))" (parenthesized_expression "(local_124 != (Sized_relobj_file<64,_false> *)0x11) || (bVar4 == false))" ( (binary_expression "local_124 != (Sized_relobj_file<64,_false> *)0x11) || (bVar4 == false)" (binary_expression "local_124 != (Sized_relobj_file<64,_false> *)0x11)" identifier != (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x11)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x11" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x11" identifier > (pointer_expression "*)0x11" * (ERROR ")" )) number_literal))) ))) || (parenthesized_expression "(bVar4 == false)" ( (binary_expression "bVar4 == false" identifier == false) ))) ))) { (expression_statement "piVar62[-3] = (int)&shdr;" (assignment_expression "piVar62[-3] = (int)&shdr" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)&shdr" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&shdr" & identifier))) ;) (expression_statement "piVar62[-4] = (int)this;" (assignment_expression "piVar62[-4] = (int)this" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) comment (expression_statement "piVar62[-5] = 0xa29c8;" (assignment_expression "piVar62[-5] = 0xa29c8" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "bVar29 = check_eh_frame_flags\n                                   ((Sized_relobj_file<64,_false> *)piVar62[-4],\n                                    (Shdr<64,_false> *)piVar62[-3]);" (assignment_expression "bVar29 = check_eh_frame_flags" identifier = identifier) (ERROR "((Sized_relobj_file<64,_false> *)piVar62[-4],\n                                    (Shdr<64,_false> *)piVar62[-3])" ( ( (comma_expression "Sized_relobj_file<64,_false> *)piVar62[-4],\n                                    (Shdr<64,_false> *)piVar62[-3])" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false> *)piVar62[-4],\n                                    (Shdr<64,_false> *)piVar62[-3])" (binary_expression "_false> *)piVar62[-4]" identifier > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (parenthesized_expression "(Shdr<64,_false> *)piVar62[-3])" ( (comma_expression "Shdr<64,_false> *)piVar62[-3]" (binary_expression "Shdr<64" identifier < number_literal) , (binary_expression "_false> *)piVar62[-3]" identifier > (pointer_expression "*)piVar62[-3]" * (ERROR ")" )) (subscript_expression "piVar62[-3]" identifier [ number_literal ])))) ))))) ;) (expression_statement "uVar69 = i;" (assignment_expression "uVar69 = i" identifier = identifier) ;) (expression_statement "bVar75 = false;" (assignment_expression "bVar75 = false" identifier = false) ;) (expression_statement "bVar29 = !bVar29;" (assignment_expression "bVar29 = !bVar29" identifier = (unary_expression "!bVar29" ! identifier)) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_03;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_03" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_03" ( (binary_expression "Shdr_data<64> *)extraout_ECX_03" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_03" * (ERROR ")" )) identifier)) ))) ;) if (parenthesized_expression "(!bVar29)" ( (unary_expression "!bVar29" ! identifier) )) { (expression_statement "SVar49.p_ = (Shdr_data<64> *)0xa;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)0xa" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)0xa" ( (binary_expression "Shdr_data<64> *)0xa" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)0xa" * (ERROR ")" )) number_literal)) ))) ;) (expression_statement "pbVar65 = pbVar70;" (assignment_expression "pbVar65 = pbVar70" identifier = identifier) ;) (expression_statement "pbVar72 = (byte *)".eh_frame";" (assignment_expression "pbVar72 = (byte *)".eh_frame"" identifier = (cast_expression "(byte *)".eh_frame"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".eh_frame"" " string_content "))) ;) do (ERROR "{\n                    if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    }\n                    else if (this->is_deferred_layout_ == false) {\n                      if (eh_frame_sections.\n                          super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                          _M_finish ==\n                          eh_frame_sections.\n                          super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                          _M_end_of_storage) {\n                        piVar62[-2] = (int)&i;\n                        piVar62[-3] = (int)eh_frame_sections.\n                                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                           ._M_impl._M_finish;\n                        piVar62[-4] = (int)&eh_frame_sections;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa426e;\n                        std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                        _M_realloc_insert<unsigned_int_const&>\n                                  ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_29;\n                      }\n                      else {\n                        *eh_frame_sections.\n                         super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                         _M_finish = i;\n                        eh_frame_sections.\n                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                        _M_finish = eh_frame_sections.\n                                    super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                    _M_impl._M_finish + 1;\n                      }\n                    }\n                    else" (compound_statement "{\n                    if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    }" { (if_statement "if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;" if (parenthesized_expression "((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff" ( (assignment_expression "(Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff" (call_expression "(Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + i * 8 + 4)" (parenthesized_expression "(Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                      *(undefined4 *)" ( (comma_expression "Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)SVar49.p_ ==\n                        (Sized_relobj_file<64,_false> *)0x0) break;\n                    SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff" (binary_expression "_false> *)SVar49.p_" identifier > (pointer_expression "*)SVar49.p_" * (ERROR ")" )) (field_expression "SVar49.p_" identifier . field_identifier))) == (ERROR "(Sized_relobj_file<64,_false> *)0x0) break;" (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x0)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x0" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier ;) (assignment_expression "SVar49.p_ = (Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff" (field_expression "SVar49.p_" identifier . field_identifier) = (assignment_expression "(Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i) = 0xffffffff" (call_expression "(Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)(puVar18 + i)" (parenthesized_expression "(Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *)" ( (comma_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int" (field_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base" (field_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_" (call_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1);\n                      puVar18 = (this->super_Sized_relobj<64,_false>)" (assignment_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i] =\n                           (Output_section *)((this->is_deferred_layout_ != false) + 1)" (subscript_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start[i]" (field_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl._M_start" (field_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                      ._M_impl" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold::Output_section*,_std" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base<gold" (field_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                      super__Vector_base" (field_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj" (call_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26) {\n                      (this->super_Sized_relobj<64,_false>)" (call_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {\n                    if (bVar26)" (call_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29);\n                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false))" (call_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar29)" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65 == *pbVar72" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72;\n                    bVar29 = *pbVar65" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65 < *pbVar72" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3);\n                    bVar75 = *pbVar65" (binary_expression "Shdr_data<64> *)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3)" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)\n                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3)" * (ERROR ")" )) (parenthesized_expression "((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3)" ( (binary_expression "(int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_ + 3" (cast_expression "(int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_" & (field_expression "((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->\n                                       output_views_" (parenthesized_expression "((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))" ( (call_expression "(Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c)" (parenthesized_expression "(Sized_relobj_file<64,_false> *)" ( (comma_expression "Sized_relobj_file<64,_false> *" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "((int)SVar49.p_ + -0x13c)" ( (binary_expression "(int)SVar49.p_ + -0x13c" (cast_expression "(int)SVar49.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "SVar49.p_" identifier . field_identifier)) + number_literal) ))) )) -> field_identifier))) + number_literal) )))) (ERROR ";\n                    bVar75 =" ; identifier =) * identifier) < (pointer_expression "*pbVar72" * identifier)) (ERROR ";\n                    bVar29 =" ; identifier =) * identifier) == (pointer_expression "*pbVar72" * identifier)) (ERROR ";\n                    pbVar65 = pbVar65" ; identifier = identifier) + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) (ERROR ";\n                    pbVar72 = pbVar72" ; identifier = identifier) + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) (ERROR ";\n                  } while" ; } while) (argument_list "(bVar29)" ( identifier ))) (ERROR ";\n                  if" ; if) (argument_list "(((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false))" ( (binary_expression "((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)" (parenthesized_expression "((!bVar75 && !bVar29) == bVar75)" ( (binary_expression "(!bVar75 && !bVar29) == bVar75" (parenthesized_expression "(!bVar75 && !bVar29)" ( (binary_expression "!bVar75 && !bVar29" (unary_expression "!bVar75" ! identifier) && (unary_expression "!bVar29" ! identifier)) )) == identifier) )) && (parenthesized_expression "(local_124 = pSVar5, bVar4 == false)" ( (comma_expression "local_124 = pSVar5, bVar4 == false" (assignment_expression "local_124 = pSVar5" identifier = identifier) , (binary_expression "bVar4 == false" identifier == false)) ))) ))) (ERROR "{\n                    if" { if) (argument_list "(bVar26)" ( identifier ))) (ERROR "{" {) (argument_list "(this->super_Sized_relobj<64,_false>)" ( (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier (ERROR ">" >) ))) . field_identifier) . field_identifier) . field_identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) [ identifier ]) = (cast_expression "(Output_section *)((this->is_deferred_layout_ != false) + 1)" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((this->is_deferred_layout_ != false) + 1)" ( (binary_expression "(this->is_deferred_layout_ != false) + 1" (parenthesized_expression "(this->is_deferred_layout_ != false)" ( (binary_expression "this->is_deferred_layout_ != false" (field_expression "this->is_deferred_layout_" identifier -> field_identifier) != false) )) + number_literal) )))) (ERROR ";\n                      puVar18 =" ; identifier =) (argument_list "(this->super_Sized_relobj<64,_false>)" ( (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier (ERROR ">" >) ))) . field_identifier) . field_identifier) < identifier) , identifier) (ERROR "::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      *(undefined4 *" : : identifier < identifier > identifier > . identifier . identifier ; * ( identifier *) )) (argument_list "(puVar18 + i)" ( (binary_expression "puVar18 + i" identifier + identifier) ))) = number_literal)))) (ERROR ";\n                      *(undefined4 *" ; * ( identifier *) )) (argument_list "((int)puVar18 + i * 8 + 4)" ( (binary_expression "(int)puVar18 + i * 8 + 4" (binary_expression "(int)puVar18 + i * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "i * 8" identifier * number_literal)) + number_literal) ))) = number_literal) )) (expression_statement ";" ;)) }) else if ( identifier -> identifier == false ) { if ( identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier == identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier ) (compound_statement "{\n                        piVar62[-2] = (int)&i;\n                        piVar62[-3] = (int)eh_frame_sections.\n                                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                           ._M_impl._M_finish;\n                        piVar62[-4] = (int)&eh_frame_sections;\n                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa426e;\n                        std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                        _M_realloc_insert<unsigned_int_const&>\n                                  ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_29;\n                      }" { (expression_statement "piVar62[-2] = (int)&i;" (assignment_expression "piVar62[-2] = (int)&i" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)&i" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&i" & identifier))) ;) (ERROR "piVar62[-3] = (int)eh_frame_sections.\n                                           super__Vector_base<unsigned_int,_std::" (comma_expression "piVar62[-3] = (int)eh_frame_sections.\n                                           super__Vector_base<unsigned_int,_std" (assignment_expression "piVar62[-3] = (int)eh_frame_sections.\n                                           super__Vector_base<unsigned_int" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (binary_expression "(int)eh_frame_sections.\n                                           super__Vector_base<unsigned_int" (cast_expression "(int)eh_frame_sections.\n                                           super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "eh_frame_sections.\n                                           super__Vector_base" identifier . field_identifier)) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>\n                                           ._M_impl._M_finish;" (field_expression "allocator<unsigned_int>_>\n                                           ._M_impl._M_finish" (field_expression "allocator<unsigned_int>_>\n                                           ._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "piVar62[-4] = (int)&eh_frame_sections;" (assignment_expression "piVar62[-4] = (int)&eh_frame_sections" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&eh_frame_sections" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&eh_frame_sections" & identifier))) ;) comment (expression_statement "piVar62[-5] = 0xa426e;" (assignment_expression "piVar62[-5] = 0xa426e" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                        _M_realloc_insert<unsigned_int_const&>\n                                  ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);" statement_identifier (ERROR "::vector<unsigned_int,_std::allocator<unsigned_int>_>:" : : (comma_expression "vector<unsigned_int,_std" (binary_expression "vector<unsigned_int" identifier < identifier) , identifier) : : (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > :) : (expression_statement "_M_realloc_insert<unsigned_int_const&>\n                                  ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);" (binary_expression "_M_realloc_insert<unsigned_int_const&>\n                                  ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2])" (binary_expression "_M_realloc_insert<unsigned_int_const" identifier < identifier) (ERROR "&" &) > (parenthesized_expression "((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2])" ( (parenthesized_expression "(vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2])" ( (ERROR "vector<unsigned_int,_std::" (comma_expression "vector<unsigned_int,_std" (binary_expression "vector<unsigned_int" identifier < identifier) , identifier) : :) (comma_expression "allocator<unsigned_int>_> *)\n                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]" (binary_expression "allocator<unsigned_int>_> *)\n                                   piVar62[-4]" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > (pointer_expression "*)\n                                   piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (comma_expression "(uint *)piVar62[-3],(uint *)piVar62[-2]" (cast_expression "(uint *)piVar62[-3]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (cast_expression "(uint *)piVar62[-2]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])))) )) ))) ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_29;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_29" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_29" ( (binary_expression "Shdr_data<64> *)extraout_ECX_29" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_29" * (ERROR ")" )) identifier)) ))) ;) }) else (compound_statement "{\n                        *eh_frame_sections.\n                         super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                         _M_finish = i;\n                        eh_frame_sections.\n                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                        _M_finish = eh_frame_sections.\n                                    super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                    _M_impl._M_finish + 1;\n                      }" { (ERROR "*eh_frame_sections.\n                         super__Vector_base<unsigned_int,_std::" (comma_expression "*eh_frame_sections.\n                         super__Vector_base<unsigned_int,_std" (binary_expression "*eh_frame_sections.\n                         super__Vector_base<unsigned_int" (pointer_expression "*eh_frame_sections.\n                         super__Vector_base" * (field_expression "eh_frame_sections.\n                         super__Vector_base" identifier . field_identifier)) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n                         _M_finish = i;" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n                         _M_finish = i" (field_expression "allocator<unsigned_int>_>._M_impl.\n                         _M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = identifier) ;) (ERROR "eh_frame_sections.\n                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                        _M_finish = eh_frame_sections.\n                                    super__Vector_base<unsigned_int,_std::" (comma_expression "eh_frame_sections.\n                        super__Vector_base<unsigned_int,_std" (binary_expression "eh_frame_sections.\n                        super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.\n                        super__Vector_base" identifier . field_identifier) < identifier) , identifier) : : (comma_expression "allocator<unsigned_int>_>._M_impl.\n                        _M_finish = eh_frame_sections.\n                                    super__Vector_base<unsigned_int,_std" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n                        _M_finish = eh_frame_sections.\n                                    super__Vector_base<unsigned_int" (field_expression "allocator<unsigned_int>_>._M_impl.\n                        _M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (binary_expression "eh_frame_sections.\n                                    super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.\n                                    super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>.\n                                    _M_impl._M_finish + 1;" (binary_expression "allocator<unsigned_int>_>.\n                                    _M_impl._M_finish + 1" (field_expression "allocator<unsigned_int>_>.\n                                    _M_impl._M_finish" (field_expression "allocator<unsigned_int>_>.\n                                    _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) + number_literal) ;) }) } else) { (expression_statement "uVar39 = puVar31[i];" (assignment_expression "uVar39 = puVar31[i]" identifier = (subscript_expression "puVar31[i]" identifier [ identifier ])) ;) (expression_statement "uVar11 = puVar30[i];" (assignment_expression "uVar11 = puVar30[i]" identifier = (subscript_expression "puVar30[i]" identifier [ identifier ])) ;) (expression_statement "piVar62[-1] = 0xa2a5f;" (assignment_expression "piVar62[-1] = 0xa2a5f" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = number_literal) ;) (ERROR "std::__cxx11::\n                      basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                      basic_string((basic_string<char,_std::char_traits<char>,_std::" (comma_expression "std::__cxx11::\n                      basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                      basic_string((basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::__cxx11::\n                      basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n                      basic_string((basic_string<char,_std::char_traits<char>" : : (comma_expression "__cxx11::\n                      basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::\n                      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 ( ( (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : :) (expression_statement "allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);" (comma_expression "allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2])" (binary_expression "allocator<char>_>\n                                    *)*piVar62" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (pointer_expression "*)*piVar62" * (ERROR ")" )) (pointer_expression "*piVar62" * identifier))) , (comma_expression "(char *)piVar62[1],(allocator<char> *)piVar62[2])" (cast_expression "(char *)piVar62[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[1]" identifier [ number_literal ])) , (parenthesized_expression "(allocator<char> *)piVar62[2])" ( (binary_expression "allocator<char> *)piVar62[2]" (binary_expression "allocator<char" identifier < identifier) > (pointer_expression "*)piVar62[2]" * (ERROR ")" )) (subscript_expression "piVar62[2]" identifier [ number_literal ]))) )))) ;) (expression_statement "local_6c = uVar69;" (assignment_expression "local_6c = uVar69" identifier = identifier) ;) (expression_statement "local_68 = uVar11;" (assignment_expression "local_68 = uVar11" identifier = identifier) ;) (expression_statement "local_64 = uVar39;" (assignment_expression "local_64 = uVar39" identifier = identifier) ;) (expression_statement "local_60 = (Input_file *)local_134->sh_name;" (assignment_expression "local_60 = (Input_file *)local_134->sh_name" identifier = (cast_expression "(Input_file *)local_134->sh_name" ( (type_descriptor "Input_file *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_134->sh_name" identifier -> field_identifier))) ;) (expression_statement "local_58 = (int)local_134->sh_flags;" (assignment_expression "local_58 = (int)local_134->sh_flags" identifier = (cast_expression "(int)local_134->sh_flags" ( (type_descriptor "int" primitive_type) ) (field_expression "local_134->sh_flags" identifier -> field_identifier))) ;) (expression_statement "local_54 = *(uint *)((int)&local_134->sh_flags + 4);" (assignment_expression "local_54 = *(uint *)((int)&local_134->sh_flags + 4)" identifier = (pointer_expression "*(uint *)((int)&local_134->sh_flags + 4)" * (cast_expression "(uint *)((int)&local_134->sh_flags + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_134->sh_flags + 4)" ( (binary_expression "(int)&local_134->sh_flags + 4" (cast_expression "(int)&local_134->sh_flags" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_flags" & (field_expression "local_134->sh_flags" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_50 = *(undefined4 *)&local_134->sh_addr;" (assignment_expression "local_50 = *(undefined4 *)&local_134->sh_addr" identifier = (pointer_expression "*(undefined4 *)&local_134->sh_addr" * (cast_expression "(undefined4 *)&local_134->sh_addr" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_134->sh_addr" & (field_expression "local_134->sh_addr" identifier -> field_identifier))))) ;) (expression_statement "local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);" (assignment_expression "local_4c = *(Xindex **)((int)&local_134->sh_addr + 4)" identifier = (pointer_expression "*(Xindex **)((int)&local_134->sh_addr + 4)" * (cast_expression "(Xindex **)((int)&local_134->sh_addr + 4)" ( (type_descriptor "Xindex **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134->sh_addr + 4)" ( (binary_expression "(int)&local_134->sh_addr + 4" (cast_expression "(int)&local_134->sh_addr" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_addr" & (field_expression "local_134->sh_addr" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_48 = *(Compressed_section_map **)&local_134->sh_offset;" (assignment_expression "local_48 = *(Compressed_section_map **)&local_134->sh_offset" identifier = (pointer_expression "*(Compressed_section_map **)&local_134->sh_offset" * (cast_expression "(Compressed_section_map **)&local_134->sh_offset" ( (type_descriptor "Compressed_section_map **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_134->sh_offset" & (field_expression "local_134->sh_offset" identifier -> field_identifier))))) ;) (expression_statement "local_44 = *(pointer *)((int)&local_134->sh_offset + 4);" (assignment_expression "local_44 = *(pointer *)((int)&local_134->sh_offset + 4)" identifier = (pointer_expression "*(pointer *)((int)&local_134->sh_offset + 4)" * (cast_expression "(pointer *)((int)&local_134->sh_offset + 4)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_134->sh_offset + 4)" ( (binary_expression "(int)&local_134->sh_offset + 4" (cast_expression "(int)&local_134->sh_offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_offset" & (field_expression "local_134->sh_offset" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_40 = *(pointer *)&local_134->sh_size;" (assignment_expression "local_40 = *(pointer *)&local_134->sh_size" identifier = (pointer_expression "*(pointer *)&local_134->sh_size" * (cast_expression "(pointer *)&local_134->sh_size" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_134->sh_size" & (field_expression "local_134->sh_size" identifier -> field_identifier))))) ;) (expression_statement "local_3c = *(pointer *)((int)&local_134->sh_size + 4);" (assignment_expression "local_3c = *(pointer *)((int)&local_134->sh_size + 4)" identifier = (pointer_expression "*(pointer *)((int)&local_134->sh_size + 4)" * (cast_expression "(pointer *)((int)&local_134->sh_size + 4)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_134->sh_size + 4)" ( (binary_expression "(int)&local_134->sh_size + 4" (cast_expression "(int)&local_134->sh_size" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_size" & (field_expression "local_134->sh_size" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                  *)local_134->sh_link;\n                      local_34 = (Object_merge_map *)local_134->sh_info;\n                      local_30 = *(undefined4 *)&local_134->sh_addralign;\n                      local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                      local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                      local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                      piVar62[-3] = (int)&offset;\n                      piVar62[-4] = (int)&this->deferred_layout_;" (assignment_expression "local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                  *)local_134->sh_link;\n                      local_34 = (Object_merge_map *)local_134->sh_info;\n                      local_30 = *(undefined4 *)&local_134->sh_addralign;\n                      local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                      local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                      local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                      piVar62[-3] = (int)&offset;\n                      piVar62[-4] = (int)&this->deferred_layout_" identifier = (parenthesized_expression "(vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                  *)local_134->sh_link;\n                      local_34 = (Object_merge_map *)local_134->sh_info;\n                      local_30 = *(undefined4 *)&local_134->sh_addralign;\n                      local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                      local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                      local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                      piVar62[-3] = (int)&offset;\n                      piVar62[-4] = (int)&this->deferred_layout_" ( (ERROR "vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                  *)local_134->sh_link;\n                      local_34 = (Object_merge_map *)local_134->sh_info;\n                      local_30 = *(undefined4 *)&local_134->sh_addralign;\n                      local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                      local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                      local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                      piVar62[-3] = (int)&offset;" (binary_expression "vector<gold" identifier < identifier) : : (type_descriptor "Relocatable_relocs*" type_identifier (abstract_pointer_declarator "*" *)) , identifier : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Relocatable_relocs*>_>\n                                  *)local_134->sh_link" (binary_expression "Relocatable_relocs*>_" identifier * (ERROR ">" >) identifier) > (pointer_expression "*)local_134->sh_link" * (ERROR ")" )) (field_expression "local_134->sh_link" identifier -> field_identifier))) ; (assignment_expression "local_34 = (Object_merge_map *)local_134->sh_info" identifier = (cast_expression "(Object_merge_map *)local_134->sh_info" ( (type_descriptor "Object_merge_map *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_134->sh_info" identifier -> field_identifier))) ; (assignment_expression "local_30 = *(undefined4 *)&local_134->sh_addralign" identifier = (pointer_expression "*(undefined4 *)&local_134->sh_addralign" * (cast_expression "(undefined4 *)&local_134->sh_addralign" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_134->sh_addralign" & (field_expression "local_134->sh_addralign" identifier -> field_identifier))))) ; (assignment_expression "local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4)" identifier = (pointer_expression "*(Read_relocs_data **)((int)&local_134->sh_addralign + 4)" * (cast_expression "(Read_relocs_data **)((int)&local_134->sh_addralign + 4)" ( (type_descriptor "Read_relocs_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134->sh_addralign + 4)" ( (binary_expression "(int)&local_134->sh_addralign + 4" (cast_expression "(int)&local_134->sh_addralign" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_addralign" & (field_expression "local_134->sh_addralign" identifier -> field_identifier))) + number_literal) ))))) ; (assignment_expression "local_28 = *(Symbols_data **)&local_134->sh_entsize" identifier = (pointer_expression "*(Symbols_data **)&local_134->sh_entsize" * (cast_expression "(Symbols_data **)&local_134->sh_entsize" ( (type_descriptor "Symbols_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_134->sh_entsize" & (field_expression "local_134->sh_entsize" identifier -> field_identifier))))) ; (assignment_expression "local_24 = *(uint **)((int)&local_134->sh_entsize + 4)" identifier = (pointer_expression "*(uint **)((int)&local_134->sh_entsize + 4)" * (cast_expression "(uint **)((int)&local_134->sh_entsize + 4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134->sh_entsize + 4)" ( (binary_expression "(int)&local_134->sh_entsize + 4" (cast_expression "(int)&local_134->sh_entsize" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_entsize" & (field_expression "local_134->sh_entsize" identifier -> field_identifier))) + number_literal) ))))) ; (assignment_expression "piVar62[-3] = (int)&offset" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)&offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&offset" & identifier))) ;) (assignment_expression "piVar62[-4] = (int)&this->deferred_layout_" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&this->deferred_layout_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this->deferred_layout_" & (field_expression "this->deferred_layout_" identifier -> field_identifier)))) ))) ;) (expression_statement "local_5c = pSVar5;" (assignment_expression "local_5c = pSVar5" identifier = identifier) ;) comment (expression_statement "piVar62[-5] = 0xa2aea;" (assignment_expression "piVar62[-5] = 0xa2aea" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "std::\n                      vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                      ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                                ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3]);" statement_identifier (ERROR "::\n                      vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                      ::emplace_back<gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                      ::emplace_back<gold" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>_>\n                      ::emplace_back<gold" (binary_expression "_false>::Deferred_layout>_>\n                      ::emplace_back" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) > (ERROR "::" : :) identifier) < identifier)) :) : (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>\n                                ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3]);" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>\n                                ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3])" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>\n                                ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3])" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > (parenthesized_expression "((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3])" ( (parenthesized_expression "(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3])" ( (ERROR "vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3]" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false>::Deferred_layout>_>\n                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3]" (binary_expression "_false>::Deferred_layout>_>\n                                  *)piVar62[-4]" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (cast_expression "(Deferred_layout *)piVar62[-3]" ( (type_descriptor "Deferred_layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])))) )) )))) ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_04;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_04" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_04" ( (binary_expression "Shdr_data<64> *)extraout_ECX_04" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_04" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "ppuVar57 = (undefined **)uVar69;" (assignment_expression "ppuVar57 = (undefined **)uVar69" identifier = (cast_expression "(undefined **)uVar69" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) if ( ( (ERROR "Sized_relobj_file<64,_false> *)offset !=\n                          (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                        piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                        piVar62[-5] = 0xa2b0a;\n                        operator_delete((void *)piVar62[-4]);\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_05;\n                        ppuVar57 = local_120;\n                      }\n                    }\n                    goto LAB_000a23a1;\n                  }\n                }\n                if" (comma_expression "Sized_relobj_file<64,_false> *)offset !=\n                          (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset !=\n                          (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier)) != (parenthesized_expression "(Sized_relobj_file<64,_false> *)&stack0xffffff84)" ( (comma_expression "Sized_relobj_file<64,_false> *)&stack0xffffff84" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)&stack0xffffff84" identifier > (pointer_expression "*)&stack0xffffff84" * (ERROR ")" )) (pointer_expression "&stack0xffffff84" & identifier)))) )))) (compound_statement "{\n                        piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                        piVar62[-5] = 0xa2b0a;\n                        operator_delete((void *)piVar62[-4]);\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_05;\n                        ppuVar57 = local_120;\n                      }" { (expression_statement "piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;" (assignment_expression "piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)(Sized_relobj_file<64,_false> *)offset" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset" ( (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) )))) ;) (expression_statement "piVar62[-5] = 0xa2b0a;" (assignment_expression "piVar62[-5] = 0xa2b0a" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "operator_delete((void *)piVar62[-4]);" (call_expression "operator_delete((void *)piVar62[-4])" identifier (argument_list "((void *)piVar62[-4])" ( (cast_expression "(void *)piVar62[-4]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) ))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_05;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_05" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_05" ( (binary_expression "Shdr_data<64> *)extraout_ECX_05" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_05" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "ppuVar57 = local_120;" (assignment_expression "ppuVar57 = local_120" identifier = identifier) ;) }) } goto identifier ; } } if) ( (type_descriptor "bVar24" type_identifier) ) { (ERROR "pGVar34 = parameters->options_;\n                  if (pGVar34 == (General_options *)0x0) {\n                    piVar62[-1] = (int)ppuVar57;\n                    piVar62[-2] = (int)"options";\n                    piVar62[-3] = 0x5c;\n                    piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    piVar62[-5] = 0xa4330;\n                    do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                  }\n                  iVar50 = i * 4;\n                  pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                            super__Vector_base<gold::" (call_expression "pGVar34 = parameters->options_;\n                  if (pGVar34 == (General_options *)0x0)" (assignment_expression "pGVar34 = parameters->options_" identifier = (field_expression "parameters->options_" identifier -> field_identifier)) (ERROR ";\n                  if" ; if) (argument_list "(pGVar34 == (General_options *)0x0)" ( (binary_expression "pGVar34 == (General_options *)0x0" identifier == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) (initializer_list "{\n                    piVar62[-1] = (int)ppuVar57;\n                    piVar62[-2] = (int)"options";\n                    piVar62[-3] = 0x5c;\n                    piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    piVar62[-5] = 0xa4330;\n                    do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                  }" { (ERROR "piVar62[-1] = (int)ppuVar57;\n                    piVar62[-2] = (int)"options";\n                    piVar62[-3] = 0x5c;\n                    piVar62[-4] = (int)"../../gold/parameters.h";" (assignment_expression "piVar62[-1] = (int)ppuVar57" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = (cast_expression "(int)ppuVar57" ( (type_descriptor "int" primitive_type) ) identifier)) ; (assignment_expression "piVar62[-2] = (int)"options"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"options"" ( (type_descriptor "int" primitive_type) ) (string_literal ""options"" " string_content "))) ; (assignment_expression "piVar62[-3] = 0x5c" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ; (assignment_expression "piVar62[-4] = (int)"../../gold/parameters.h"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/parameters.h"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/parameters.h"" " string_content "))) ;) comment (ERROR "piVar62[-5] = 0xa4330;" (assignment_expression "piVar62[-5] = 0xa4330" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) (ERROR ";" ;) }) (assignment_expression "iVar50 = i * 4" identifier = (binary_expression "i * 4" identifier * number_literal)) ; (assignment_expression "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                            super__Vector_base<gold" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                            super__Vector_base<gold" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                            super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier)) : :) (binary_expression "Output_section*" identifier * identifier) , (field_expression "_std::allocator<gold::Output_section*>_>\n                            ._M_impl._M_start[i];\n                  SVar49.p_" (subscript_expression "_std::allocator<gold::Output_section*>_>\n                            ._M_impl._M_start[i]" (field_expression "_std::allocator<gold::Output_section*>_>\n                            ._M_impl._M_start" (field_expression "_std::allocator<gold::Output_section*>_>\n                            ._M_impl" (binary_expression "_std::allocator<gold::Output_section*>_" identifier (ERROR "::allocator<gold::Output_section*" : : (binary_expression "allocator<gold" identifier < identifier) : : identifier *) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) [ identifier ]) (ERROR ";\n                  SVar49" ; identifier) . field_identifier) = ( (ERROR "Shdr_data<64> *)this;\n                  if ((pGVar34->gc_sections_).value == false)" (call_expression "Shdr_data<64> *)this;\n                  if ((pGVar34->gc_sections_).value == false)" (binary_expression "Shdr_data<64> *)this" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)this" * (ERROR ")" )) identifier)) (ERROR ";\n                  if" ; if) (argument_list "((pGVar34->gc_sections_).value == false)" ( (binary_expression "(pGVar34->gc_sections_).value == false" (field_expression "(pGVar34->gc_sections_).value" (parenthesized_expression "(pGVar34->gc_sections_)" ( (field_expression "pGVar34->gc_sections_" identifier -> field_identifier) )) . field_identifier) == false) )))) { identifier : if (parenthesized_expression "(pGVar34->icf_status_ != ICF_NONE)" ( (binary_expression "pGVar34->icf_status_ != ICF_NONE" (field_expression "pGVar34->icf_status_" identifier -> field_identifier) != identifier) )) { (if_statement "if (pOVar44 == (Output_section *)0x0) {\n                        puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                  super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                  ._M_impl._M_start;\n                        uVar69 = *(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i];\n                        SVar49.p_ = shdr.p_;\n                        if (uVar69 != 0xffffffff) {\n                          piVar62[-1] = uVar69;\n                          piVar62[-2] = (int)"do_layout";\n                          piVar62[-3] = 0x6f9;\n                          piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = (int)&UNK_000a2f61;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }\n                        goto LAB_000a23a1;\n                      }" if (parenthesized_expression "(pOVar44 == (Output_section *)0x0)" ( (binary_expression "pOVar44 == (Output_section *)0x0" identifier == (cast_expression "(Output_section *)0x0" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                  super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                  ._M_impl._M_start;\n                        uVar69 = *(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i];\n                        SVar49.p_ = shdr.p_;\n                        if (uVar69 != 0xffffffff) {\n                          piVar62[-1] = uVar69;\n                          piVar62[-2] = (int)"do_layout";\n                          piVar62[-3] = 0x6f9;\n                          piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = (int)&UNK_000a2f61;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }\n                        goto LAB_000a23a1;\n                      }" { (ERROR "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                  super__Vector_base<long_long_unsigned_int,_std::" (comma_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                  super__Vector_base<long_long_unsigned_int,_std" (assignment_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                  super__Vector_base<long_long_unsigned_int" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                                  super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                                  super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<long_long_unsigned_int>_>\n                                  ._M_impl._M_start;" (field_expression "allocator<long_long_unsigned_int>_>\n                                  ._M_impl._M_start" (field_expression "allocator<long_long_unsigned_int>_>\n                                  ._M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "uVar69 = *(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i];" (assignment_expression "uVar69 = *(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]" identifier = (binary_expression "*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]" (pointer_expression "*(uint *)((int)puVar18 + i * 8 + 4)" * (cast_expression "(uint *)((int)puVar18 + i * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + i * 8 + 4)" ( (binary_expression "(int)puVar18 + i * 8 + 4" (binary_expression "(int)puVar18 + i * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "i * 8" identifier * number_literal)) + number_literal) )))) & (cast_expression "(uint)puVar18[i]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar18[i]" identifier [ identifier ])))) ;) (expression_statement "SVar49.p_ = shdr.p_;" (assignment_expression "SVar49.p_ = shdr.p_" (field_expression "SVar49.p_" identifier . field_identifier) = (field_expression "shdr.p_" identifier . field_identifier)) ;) (if_statement "if (uVar69 != 0xffffffff) {\n                          piVar62[-1] = uVar69;\n                          piVar62[-2] = (int)"do_layout";\n                          piVar62[-3] = 0x6f9;\n                          piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = (int)&UNK_000a2f61;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }" if (parenthesized_expression "(uVar69 != 0xffffffff)" ( (binary_expression "uVar69 != 0xffffffff" identifier != number_literal) )) (compound_statement "{\n                          piVar62[-1] = uVar69;\n                          piVar62[-2] = (int)"do_layout";\n                          piVar62[-3] = 0x6f9;\n                          piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = (int)&UNK_000a2f61;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }" { (expression_statement "piVar62[-1] = uVar69;" (assignment_expression "piVar62[-1] = uVar69" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-2] = (int)"do_layout";" (assignment_expression "piVar62[-2] = (int)"do_layout"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"do_layout"" ( (type_descriptor "int" primitive_type) ) (string_literal ""do_layout"" " string_content "))) ;) (expression_statement "piVar62[-3] = 0x6f9;" (assignment_expression "piVar62[-3] = 0x6f9" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-4] = (int)"../../gold/object.cc";" (assignment_expression "piVar62[-4] = (int)"../../gold/object.cc"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/object.cc"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/object.cc"" " string_content "))) ;) comment (expression_statement "piVar62[-5] = (int)&UNK_000a2f61;" (assignment_expression "piVar62[-5] = (int)&UNK_000a2f61" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = (cast_expression "(int)&UNK_000a2f61" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&UNK_000a2f61" & identifier))) ;) (expression_statement "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);" (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) })) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) (labeled_statement "LAB_000a2cf0:\n                      SVar49.p_ = shdr.p_;" statement_identifier : (expression_statement "SVar49.p_ = shdr.p_;" (assignment_expression "SVar49.p_ = shdr.p_" (field_expression "SVar49.p_" identifier . field_identifier) = (field_expression "shdr.p_" identifier . field_identifier)) ;)) if (parenthesized_expression "(((shdr.p_)->sh_flags & 2) != 0)" ( (binary_expression "((shdr.p_)->sh_flags & 2) != 0" (parenthesized_expression "((shdr.p_)->sh_flags & 2)" ( (binary_expression "(shdr.p_)->sh_flags & 2" (field_expression "(shdr.p_)->sh_flags" (parenthesized_expression "(shdr.p_)" ( (field_expression "shdr.p_" identifier . field_identifier) )) -> field_identifier) & number_literal) )) != number_literal) )) { (expression_statement "piVar62[-2] = i;" (assignment_expression "piVar62[-2] = i" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-3] = (int)this;" (assignment_expression "piVar62[-3] = (int)this" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-4] = (int)symtab->icf_;" (assignment_expression "piVar62[-4] = (int)symtab->icf_" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)symtab->icf_" ( (type_descriptor "int" primitive_type) ) (field_expression "symtab->icf_" identifier -> field_identifier))) ;) (expression_statement "piVar62[-5] = 0xa3ddb;" (assignment_expression "piVar62[-5] = 0xa3ddb" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (ERROR "bVar29 = Icf::" (assignment_expression "bVar29 = Icf" identifier = identifier) : :) (expression_statement "is_section_folded\n                                           ((Icf *)piVar62[-4],(Relobj *)piVar62[-3],piVar62[-2]);" (call_expression "is_section_folded\n                                           ((Icf *)piVar62[-4],(Relobj *)piVar62[-3],piVar62[-2])" identifier (argument_list "((Icf *)piVar62[-4],(Relobj *)piVar62[-3],piVar62[-2])" ( (cast_expression "(Icf *)piVar62[-4]" ( (type_descriptor "Icf *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (cast_expression "(Relobj *)piVar62[-3]" ( (type_descriptor "Relobj *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (subscript_expression "piVar62[-2]" identifier [ number_literal ]) ))) ;) if (parenthesized_expression "(bVar29)" ( identifier )) { (if_statement "if (parameters->options_ == (General_options *)0x0) {\n                            piVar62[-1] = iVar50;\n                            piVar62[-2] = (int)"options";\n                            piVar62[-3] = 0x5c;\n                            piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            piVar62[-5] = 0xa44a9;\n                            do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])\n                            ;\n                          }" if (parenthesized_expression "(parameters->options_ == (General_options *)0x0)" ( (binary_expression "parameters->options_ == (General_options *)0x0" (field_expression "parameters->options_" identifier -> field_identifier) == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            piVar62[-1] = iVar50;\n                            piVar62[-2] = (int)"options";\n                            piVar62[-3] = 0x5c;\n                            piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */\n                            piVar62[-5] = 0xa44a9;\n                            do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])\n                            ;\n                          }" { (expression_statement "piVar62[-1] = iVar50;" (assignment_expression "piVar62[-1] = iVar50" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-2] = (int)"options";" (assignment_expression "piVar62[-2] = (int)"options"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"options"" ( (type_descriptor "int" primitive_type) ) (string_literal ""options"" " string_content "))) ;) (expression_statement "piVar62[-3] = 0x5c;" (assignment_expression "piVar62[-3] = 0x5c" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-4] = (int)"../../gold/parameters.h";" (assignment_expression "piVar62[-4] = (int)"../../gold/parameters.h"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/parameters.h"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/parameters.h"" " string_content "))) ;) comment comment (expression_statement "piVar62[-5] = 0xa44a9;" (assignment_expression "piVar62[-5] = 0xa44a9" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])\n                            ;" (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) })) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_20;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_20" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_20" ( (binary_expression "Shdr_data<64> *)extraout_ECX_20" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_20" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "ppuVar57 = local_120;" (assignment_expression "ppuVar57 = local_120" identifier = identifier) ;) (expression_statement "uVar69 = i;" (assignment_expression "uVar69 = i" identifier = identifier) ;) (if_statement "if ((parameters->options_->print_icf_sections_).value == false)\n                          goto LAB_000a2c3a;" if (parenthesized_expression "((parameters->options_->print_icf_sections_).value == false)" ( (binary_expression "(parameters->options_->print_icf_sections_).value == false" (field_expression "(parameters->options_->print_icf_sections_).value" (parenthesized_expression "(parameters->options_->print_icf_sections_)" ( (field_expression "parameters->options_->print_icf_sections_" (field_expression "parameters->options_" identifier -> field_identifier) -> field_identifier) )) . field_identifier) == false) )) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;)) (expression_statement "piVar62[-1] = i;" (assignment_expression "piVar62[-1] = i" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-2] = (int)this;" (assignment_expression "piVar62[-2] = (int)this" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-3] = (int)symtab->icf_;" (assignment_expression "piVar62[-3] = (int)symtab->icf_" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)symtab->icf_" ( (type_descriptor "int" primitive_type) ) (field_expression "symtab->icf_" identifier -> field_identifier))) ;) (expression_statement "piVar62[-4] = (int)&local_11c;" (assignment_expression "piVar62[-4] = (int)&local_11c" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&local_11c" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_11c" & identifier))) ;) comment (expression_statement "piVar62[-5] = 0xa4081;" (assignment_expression "piVar62[-5] = 0xa4081" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "Icf::get_folded_section\n                                    ((Icf *)piVar62[-3],(Relobj *)piVar62[-2],piVar62[-1]);" statement_identifier : (ERROR ":" :) (expression_statement "get_folded_section\n                                    ((Icf *)piVar62[-3],(Relobj *)piVar62[-2],piVar62[-1]);" (call_expression "get_folded_section\n                                    ((Icf *)piVar62[-3],(Relobj *)piVar62[-2],piVar62[-1])" identifier (argument_list "((Icf *)piVar62[-3],(Relobj *)piVar62[-2],piVar62[-1])" ( (cast_expression "(Icf *)piVar62[-3]" ( (type_descriptor "Icf *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (cast_expression "(Relobj *)piVar62[-2]" ( (type_descriptor "Relobj *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) , (subscript_expression "piVar62[-1]" identifier [ number_literal ]) ))) ;)) (expression_statement "iVar50 = *local_11c;" (assignment_expression "iVar50 = *local_11c" identifier = (pointer_expression "*local_11c" * identifier)) ;) (expression_statement "iVar12 = local_11c[1];" (assignment_expression "iVar12 = local_11c[1]" identifier = (subscript_expression "local_11c[1]" identifier [ number_literal ])) ;) (expression_statement "piVar62[-2] = local_118;" (assignment_expression "piVar62[-2] = local_118" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-3] = (int)local_11c;" (assignment_expression "piVar62[-3] = (int)local_11c" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)local_11c" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-4] = (int)&offset;" (assignment_expression "piVar62[-4] = (int)&offset" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&offset" & identifier))) ;) (expression_statement "pcVar21 = *(code **)(iVar50 + 0x40);" (assignment_expression "pcVar21 = *(code **)(iVar50 + 0x40)" identifier = (pointer_expression "*(code **)(iVar50 + 0x40)" * (cast_expression "(code **)(iVar50 + 0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar50 + 0x40)" ( (binary_expression "iVar50 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "piVar62[-5] = 0xa409e;" (assignment_expression "piVar62[-5] = 0xa409e" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pSVar51 = (Sized_relobj_file<64,_false> *)offset;" (assignment_expression "pSVar51 = (Sized_relobj_file<64,_false> *)offset" identifier = (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset" ( (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) ))) ;) (expression_statement "pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    name_._M_dataplus._M_p;" (assignment_expression "pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    name_._M_dataplus._M_p" identifier = (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    name_._M_dataplus._M_p" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    name_._M_dataplus" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    name_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier)) ;) (expression_statement "p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    _vptr_Object[0x10];" (assignment_expression "p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    _vptr_Object[0x10]" identifier = (subscript_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    _vptr_Object[0x10]" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                    _vptr_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var36 == do_section_name) {\n                            piVar62[-3] = i;\n                            piVar62[-4] = (int)&this->elf_file_;\n                            piVar62[-5] = (int)&shdr_2;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                            piVar62[-6] = 0xa40ec;\n                            elfcpp::Elf_file<64,_false,_gold::Object>::section_name\n                                      ((Elf_file<64,_false,_gold::Object> *)piVar62[-4],piVar62[-3])\n                            ;\n                            piVar61 = piVar62 + -4;\n                          }\n                          else {\n                            piVar62[-3] = i;\n                            piVar62[-4] = (int)this;\n                            piVar61 = piVar62 + -5;\n                            piVar62[-5] = (int)&shdr_2;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                            piVar62[-6] = 0xa42b7;\n                            (*p_Var36)();\n                          }" if (parenthesized_expression "(p_Var36 == do_section_name)" ( (binary_expression "p_Var36 == do_section_name" identifier == identifier) )) (compound_statement "{\n                            piVar62[-3] = i;\n                            piVar62[-4] = (int)&this->elf_file_;\n                            piVar62[-5] = (int)&shdr_2;\n                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */\n                            piVar62[-6] = 0xa40ec;\n                            elfcpp::Elf_file<64,_false,_gold::Object>::section_name\n                                      ((Elf_file<64,_false,_gold::Object> *)piVar62[-4],piVar62[-3])\n                            ;\n                            piVar61 = piVar62 + -4;\n                          }" { (expression_statement "piVar62[-3] = i;" (assignment_expression "piVar62[-3] = i" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-4] = (int)&this->elf_file_;" (assignment_expression "piVar62[-4] = (int)&this->elf_file_" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&this->elf_file_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this->elf_file_" & (field_expression "this->elf_file_" identifier -> field_identifier)))) ;) (expression_statement "piVar62[-5] = (int)&shdr_2;" (assignment_expression "piVar62[-5] = (int)&shdr_2" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = (cast_expression "(int)&shdr_2" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&shdr_2" & identifier))) ;) comment (expression_statement "piVar62[-6] = 0xa40ec;" (assignment_expression "piVar62[-6] = 0xa40ec" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "elfcpp::Elf_file<64,_false,_gold::Object>::section_name\n                                      ((Elf_file<64,_false,_gold::Object> *)piVar62[-4],piVar62[-3])\n                            ;" statement_identifier (ERROR "::Elf_file<64,_false,_gold::Object>::section_name\n                                      ((Elf_file<64,_false,_gold:" : : (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : : identifier > : : identifier ( ( (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) :) : (expression_statement "Object> *)piVar62[-4],piVar62[-3])\n                            ;" (comma_expression "Object> *)piVar62[-4],piVar62[-3]" (binary_expression "Object> *)piVar62[-4]" identifier > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (subscript_expression "piVar62[-3]" identifier [ number_literal ])) (ERROR ")" )) ;)) (expression_statement "piVar61 = piVar62 + -4;" (assignment_expression "piVar61 = piVar62 + -4" identifier = (binary_expression "piVar62 + -4" identifier + number_literal)) ;) }) (else_clause "else {\n                            piVar62[-3] = i;\n                            piVar62[-4] = (int)this;\n                            piVar61 = piVar62 + -5;\n                            piVar62[-5] = (int)&shdr_2;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                            piVar62[-6] = 0xa42b7;\n                            (*p_Var36)();\n                          }" else (compound_statement "{\n                            piVar62[-3] = i;\n                            piVar62[-4] = (int)this;\n                            piVar61 = piVar62 + -5;\n                            piVar62[-5] = (int)&shdr_2;\n                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */\n                            piVar62[-6] = 0xa42b7;\n                            (*p_Var36)();\n                          }" { (expression_statement "piVar62[-3] = i;" (assignment_expression "piVar62[-3] = i" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-4] = (int)this;" (assignment_expression "piVar62[-4] = (int)this" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar61 = piVar62 + -5;" (assignment_expression "piVar61 = piVar62 + -5" identifier = (binary_expression "piVar62 + -5" identifier + number_literal)) ;) (expression_statement "piVar62[-5] = (int)&shdr_2;" (assignment_expression "piVar62[-5] = (int)&shdr_2" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = (cast_expression "(int)&shdr_2" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&shdr_2" & identifier))) ;) comment (expression_statement "piVar62[-6] = 0xa42b7;" (assignment_expression "piVar62[-6] = 0xa42b7" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*p_Var36)();" (call_expression "(*p_Var36)()" (parenthesized_expression "(*p_Var36)" ( (pointer_expression "*p_Var36" * identifier) )) (argument_list "()" ( ))) ;) }))) (expression_statement "SVar49.p_ = shdr_2.p_;" (assignment_expression "SVar49.p_ = shdr_2.p_" (field_expression "SVar49.p_" identifier . field_identifier) = (field_expression "shdr_2.p_" identifier . field_identifier)) ;) (expression_statement "pcVar28 = program_name;" (assignment_expression "pcVar28 = program_name" identifier = identifier) ;) (expression_statement "piVar61[-1] = (int)\n                                        "%s: ICF folding section \'%s\' in file \'%s\' into \'%s\' in file \'%s\'"\n                          ;" (assignment_expression "piVar61[-1] = (int)\n                                        "%s: ICF folding section \'%s\' in file \'%s\' into \'%s\' in file \'%s\'"" (subscript_expression "piVar61[-1]" identifier [ number_literal ]) = (cast_expression "(int)\n                                        "%s: ICF folding section \'%s\' in file \'%s\' into \'%s\' in file \'%s\'"" ( (type_descriptor "int" primitive_type) ) (string_literal ""%s: ICF folding section \'%s\' in file \'%s\' into \'%s\' in file \'%s\'"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence "))) ;) (expression_statement "piVar61[-2] = 0xa4120;" (assignment_expression "piVar61[-2] = 0xa4120" (subscript_expression "piVar61[-2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "uVar39 = gettext();" (assignment_expression "uVar39 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*piVar61 = iVar12;" (assignment_expression "*piVar61 = iVar12" (pointer_expression "*piVar61" * identifier) = identifier) ;) (expression_statement "piVar61[-1] = (int)pSVar51;" (assignment_expression "piVar61[-1] = (int)pSVar51" (subscript_expression "piVar61[-1]" identifier [ number_literal ]) = (cast_expression "(int)pSVar51" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar61[-2] = (int)pcVar22;" (assignment_expression "piVar61[-2] = (int)pcVar22" (subscript_expression "piVar61[-2]" identifier [ number_literal ]) = (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar61[-3] = (int)SVar49.p_;" (assignment_expression "piVar61[-3] = (int)SVar49.p_" (subscript_expression "piVar61[-3]" identifier [ number_literal ]) = (cast_expression "(int)SVar49.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "SVar49.p_" identifier . field_identifier))) ;) (expression_statement "piVar61[-4] = (int)pcVar28;" (assignment_expression "piVar61[-4] = (int)pcVar28" (subscript_expression "piVar61[-4]" identifier [ number_literal ]) = (cast_expression "(int)pcVar28" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar61[-5] = uVar39;" (assignment_expression "piVar61[-5] = uVar39" (subscript_expression "piVar61[-5]" identifier [ number_literal ]) = identifier) ;) comment (expression_statement "piVar61[-6] = 0xa4146;" (assignment_expression "piVar61[-6] = 0xa4146" (subscript_expression "piVar61[-6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "gold_info((char *)piVar61[-5]);" (call_expression "gold_info((char *)piVar61[-5])" identifier (argument_list "((char *)piVar61[-5])" ( (cast_expression "(char *)piVar61[-5]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar61[-5]" identifier [ number_literal ])) ))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_24;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_24" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_24" ( (binary_expression "Shdr_data<64> *)extraout_ECX_24" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_24" * (ERROR ")" )) identifier)) ))) ;) (if_statement "if (shdr_2.p_ != (Shdr_data<64> *)local_94) {\n                            piVar61[-1] = (int)shdr_2.p_;\n                            piVar61[-2] = 0xa4162;\n                            operator_delete((void *)piVar61[-1]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_25;\n                          }" if (parenthesized_expression "(shdr_2.p_ != (Shdr_data<64> *)local_94)" ( (binary_expression "shdr_2.p_ != (Shdr_data<64> *)local_94)" (field_expression "shdr_2.p_" identifier . field_identifier) != (parenthesized_expression "(Shdr_data<64> *)local_94)" ( (binary_expression "Shdr_data<64> *)local_94" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)local_94" * (ERROR ")" )) identifier)) ))) )) (compound_statement "{\n                            piVar61[-1] = (int)shdr_2.p_;\n                            piVar61[-2] = 0xa4162;\n                            operator_delete((void *)piVar61[-1]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_25;\n                          }" { (expression_statement "piVar61[-1] = (int)shdr_2.p_;" (assignment_expression "piVar61[-1] = (int)shdr_2.p_" (subscript_expression "piVar61[-1]" identifier [ number_literal ]) = (cast_expression "(int)shdr_2.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "shdr_2.p_" identifier . field_identifier))) ;) (expression_statement "piVar61[-2] = 0xa4162;" (assignment_expression "piVar61[-2] = 0xa4162" (subscript_expression "piVar61[-2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "operator_delete((void *)piVar61[-1]);" (call_expression "operator_delete((void *)piVar61[-1])" identifier (argument_list "((void *)piVar61[-1])" ( (cast_expression "(void *)piVar61[-1]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar61[-1]" identifier [ number_literal ])) ))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_25;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_25" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_25" ( (binary_expression "Shdr_data<64> *)extraout_ECX_25" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_25" * (ERROR ")" )) identifier)) ))) ;) })) (expression_statement "piVar62 = piVar61 + 3;" (assignment_expression "piVar62 = piVar61 + 3" identifier = (binary_expression "piVar61 + 3" identifier + number_literal)) ;) if ( ( (ERROR "Sized_relobj_file<64,_false> *)offset !=\n                              (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                            piVar61[-1] = (int)(Sized_relobj_file<64,_false> *)offset;\n                            piVar61[-2] = 0xa417e;\n                            operator_delete((void *)piVar61[-1]);\n                            piVar62 = piVar61 + 3;\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_26;\n                          }\n                          goto LAB_000a4181;\n                        }\n                        iVar50 = i * 4;\n                        pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                                  ._M_impl._M_start[i];" (comma_expression "Sized_relobj_file<64,_false> *)offset !=\n                              (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset !=\n                              (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier)) != (parenthesized_expression "(Sized_relobj_file<64,_false> *)&stack0xffffff84)" ( (comma_expression "Sized_relobj_file<64,_false> *)&stack0xffffff84" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)&stack0xffffff84" identifier > (pointer_expression "*)&stack0xffffff84" * (ERROR ")" )) (pointer_expression "&stack0xffffff84" & identifier)))) )))) (compound_statement "{\n                            piVar61[-1] = (int)(Sized_relobj_file<64,_false> *)offset;\n                            piVar61[-2] = 0xa417e;\n                            operator_delete((void *)piVar61[-1]);\n                            piVar62 = piVar61 + 3;\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_26;\n                          }" { (expression_statement "piVar61[-1] = (int)(Sized_relobj_file<64,_false> *)offset;" (assignment_expression "piVar61[-1] = (int)(Sized_relobj_file<64,_false> *)offset" (subscript_expression "piVar61[-1]" identifier [ number_literal ]) = (cast_expression "(int)(Sized_relobj_file<64,_false> *)offset" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset" ( (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) )))) ;) (expression_statement "piVar61[-2] = 0xa417e;" (assignment_expression "piVar61[-2] = 0xa417e" (subscript_expression "piVar61[-2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "operator_delete((void *)piVar61[-1]);" (call_expression "operator_delete((void *)piVar61[-1])" identifier (argument_list "((void *)piVar61[-1])" ( (cast_expression "(void *)piVar61[-1]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar61[-1]" identifier [ number_literal ])) ))) ;) (expression_statement "piVar62 = piVar61 + 3;" (assignment_expression "piVar62 = piVar61 + 3" identifier = (binary_expression "piVar61 + 3" identifier + number_literal)) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_26;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_26" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_26" ( (binary_expression "Shdr_data<64> *)extraout_ECX_26" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_26" * (ERROR ")" )) identifier)) ))) ;) }) goto identifier ; } (assignment_expression "iVar50 = i * 4" identifier = (binary_expression "i * 4" identifier * number_literal)) ; (assignment_expression "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier)) : : (type_descriptor "Output_section*" type_identifier (abstract_pointer_declarator "*" *)) , identifier : : (binary_expression "allocator<gold" identifier < identifier) : : (subscript_expression "Output_section*>_>\n                                  ._M_impl._M_start[i]" (field_expression "Output_section*>_>\n                                  ._M_impl._M_start" (field_expression "Output_section*>_>\n                                  ._M_impl" (binary_expression "Output_section*>_" identifier * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) [ identifier ]) ;) (field_expression "SVar49.p_" identifier . field_identifier) = ( (ERROR "Shdr_data<64> *)extraout_ECX_20;\n                        ppuVar57 = local_120;\n                      }\n                    }\n                  }\n                  else" (binary_expression "Shdr_data<64> *)extraout_ECX_20" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_20" * (ERROR ")" )) identifier)) ; (assignment_expression "ppuVar57 = local_120" identifier = identifier) ; } } } else) { (if_statement "if (pOVar44 == (Output_section *)0x0) {\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      if ((*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]) != 0xffffffff) {\n                        piVar62[-1] = (int)this;\n                        piVar62[-2] = (int)"do_layout";\n                        piVar62[-3] = 0x6e4;\n                        piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = (int)&UNK_000a342d;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }\n                      goto LAB_000a23a1;\n                    }" if (parenthesized_expression "(pOVar44 == (Output_section *)0x0)" ( (binary_expression "pOVar44 == (Output_section *)0x0" identifier == (cast_expression "(Output_section *)0x0" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;\n                      if ((*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]) != 0xffffffff) {\n                        piVar62[-1] = (int)this;\n                        piVar62[-2] = (int)"do_layout";\n                        piVar62[-3] = 0x6e4;\n                        piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = (int)&UNK_000a342d;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }\n                      goto LAB_000a23a1;\n                    }" { (ERROR "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std::" (comma_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int,_std" (assignment_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                                super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start;" (field_expression "allocator<long_long_unsigned_int>_>\n                                ._M_impl._M_start" (field_expression "allocator<long_long_unsigned_int>_>\n                                ._M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if ((*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]) != 0xffffffff) {\n                        piVar62[-1] = (int)this;\n                        piVar62[-2] = (int)"do_layout";\n                        piVar62[-3] = 0x6e4;\n                        piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = (int)&UNK_000a342d;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }" if (parenthesized_expression "((*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]) != 0xffffffff)" ( (binary_expression "(*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]) != 0xffffffff" (parenthesized_expression "(*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i])" ( (binary_expression "*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]" (pointer_expression "*(uint *)((int)puVar18 + i * 8 + 4)" * (cast_expression "(uint *)((int)puVar18 + i * 8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + i * 8 + 4)" ( (binary_expression "(int)puVar18 + i * 8 + 4" (binary_expression "(int)puVar18 + i * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "i * 8" identifier * number_literal)) + number_literal) )))) & (cast_expression "(uint)puVar18[i]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar18[i]" identifier [ identifier ]))) )) != number_literal) )) (compound_statement "{\n                        piVar62[-1] = (int)this;\n                        piVar62[-2] = (int)"do_layout";\n                        piVar62[-3] = 0x6e4;\n                        piVar62[-4] = (int)"../../gold/object.cc";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = (int)&UNK_000a342d;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }" { (expression_statement "piVar62[-1] = (int)this;" (assignment_expression "piVar62[-1] = (int)this" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-2] = (int)"do_layout";" (assignment_expression "piVar62[-2] = (int)"do_layout"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"do_layout"" ( (type_descriptor "int" primitive_type) ) (string_literal ""do_layout"" " string_content "))) ;) (expression_statement "piVar62[-3] = 0x6e4;" (assignment_expression "piVar62[-3] = 0x6e4" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-4] = (int)"../../gold/object.cc";" (assignment_expression "piVar62[-4] = (int)"../../gold/object.cc"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/object.cc"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/object.cc"" " string_content "))) ;) comment comment (expression_statement "piVar62[-5] = (int)&UNK_000a342d;" (assignment_expression "piVar62[-5] = (int)&UNK_000a342d" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = (cast_expression "(int)&UNK_000a342d" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&UNK_000a342d" & identifier))) ;) (expression_statement "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);" (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) })) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) if (parenthesized_expression "(((shdr.p_)->sh_flags & 2) != 0)" ( (binary_expression "((shdr.p_)->sh_flags & 2) != 0" (parenthesized_expression "((shdr.p_)->sh_flags & 2)" ( (binary_expression "(shdr.p_)->sh_flags & 2" (field_expression "(shdr.p_)->sh_flags" (parenthesized_expression "(shdr.p_)" ( (field_expression "shdr.p_" identifier . field_identifier) )) -> field_identifier) & number_literal) )) != number_literal) )) { (expression_statement "offset._4_4_ = (_Base_ptr)i;" (assignment_expression "offset._4_4_ = (_Base_ptr)i" (field_expression "offset._4_4_" identifier . field_identifier) = (cast_expression "(_Base_ptr)i" ( (type_descriptor "_Base_ptr" type_identifier) ) identifier)) ;) (expression_statement "pGVar13 = symtab->gc_;" (assignment_expression "pGVar13 = symtab->gc_" identifier = (field_expression "symtab->gc_" identifier -> field_identifier)) ;) (expression_statement "offset._0_4_ = this;" (assignment_expression "offset._0_4_ = this" (field_expression "offset._0_4_" identifier . field_identifier) = identifier) ;) (expression_statement "piVar62[-2] = (int)&offset;" (assignment_expression "piVar62[-2] = (int)&offset" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)&offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&offset" & identifier))) ;) (expression_statement "piVar62[-3] = (int)&pGVar13->referenced_list_;" (assignment_expression "piVar62[-3] = (int)&pGVar13->referenced_list_" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)&pGVar13->referenced_list_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pGVar13->referenced_list_" & (field_expression "pGVar13->referenced_list_" identifier -> field_identifier)))) ;) (expression_statement "piVar62[-4] = (int)&local_110;" (assignment_expression "piVar62[-4] = (int)&local_110" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&local_110" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_110" & identifier))) ;) (expression_statement "piVar62[-5] = 0xa2ed3;" (assignment_expression "piVar62[-5] = 0xa2ed3" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (ERROR "std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::" (comma_expression "std::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std" identifier (ERROR "::\n                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>" : : (binary_expression "_Hashtable<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : identifier * , identifier >) , identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_std" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>_>,_std" (binary_expression "Relobj*,_unsigned_int>_" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold" identifier (ERROR "::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>" : : (comma_expression "_Identity,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : identifier * , (binary_expression "_unsigned_int>_" identifier > identifier) >) , identifier) : : (comma_expression "Section_id_hash,_std" identifier , 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                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2]);" 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                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2]);" 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                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2]);" statement_identifier (ERROR "::_Prime_rehash_policy,_std:" : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) :) : (labeled_statement "__detail::_Hashtable_traits<true,_true,_true>_>\n                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2]);" statement_identifier : (ERROR ":" :) (expression_statement "_Hashtable_traits<true,_true,_true>_>\n                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2]);" (comma_expression "_Hashtable_traits<true,_true,_true>_>\n                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2])" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_true,_true>_>\n                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2])" identifier , (binary_expression "_true>_>\n                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2])" (binary_expression "_true>_" identifier > identifier) > (ERROR "::" : :) (call_expression "find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2])" identifier (argument_list "((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2])" ( (parenthesized_expression "(_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2])" ( (ERROR "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::" (comma_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold" (binary_expression "_Hashtable<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > identifier) > (ERROR "," ,) identifier) (ERROR "::__detail::_Identity" : : identifier : : identifier) , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>,_gold" (binary_expression "_unsigned_int>_" identifier > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , 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                              *)piVar62[-3],(key_type *)piVar62[-2]" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_true,_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2]" identifier , (comma_expression "_true>_>\n                              *)piVar62[-3],(key_type *)piVar62[-2]" (binary_expression "_true>_>\n                              *)piVar62[-3]" (binary_expression "_true>_" identifier > identifier) > (pointer_expression "*)piVar62[-3]" * (ERROR ")" )) (subscript_expression "piVar62[-3]" identifier [ number_literal ]))) , (cast_expression "(key_type *)piVar62[-2]" ( (type_descriptor "key_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ]))))) )) )))))) ;))))) (expression_statement "pGVar34 = parameters->options_;" (assignment_expression "pGVar34 = parameters->options_" identifier = (field_expression "parameters->options_" identifier -> field_identifier)) ;) (if_statement "if (local_110 != 0) {\n                        if (pGVar34 == (General_options *)0x0) {\n                          piVar62[-1] = 0;\n                          piVar62[-2] = (int)"options";\n                          piVar62[-3] = 0x5c;\n                          piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = 0xa434c;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }\n                        iVar50 = i * 4;\n                        pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                                  ._M_impl._M_start[i];\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;\n                        ppuVar57 = (undefined **)this;\n                        goto LAB_000a2f0d;\n                      }" if (parenthesized_expression "(local_110 != 0)" ( (binary_expression "local_110 != 0" identifier != number_literal) )) (compound_statement "{\n                        if (pGVar34 == (General_options *)0x0) {\n                          piVar62[-1] = 0;\n                          piVar62[-2] = (int)"options";\n                          piVar62[-3] = 0x5c;\n                          piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = 0xa434c;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }\n                        iVar50 = i * 4;\n                        pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                                  ._M_impl._M_start[i];\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;\n                        ppuVar57 = (undefined **)this;\n                        goto LAB_000a2f0d;\n                      }" { (if_statement "if (pGVar34 == (General_options *)0x0) {\n                          piVar62[-1] = 0;\n                          piVar62[-2] = (int)"options";\n                          piVar62[-3] = 0x5c;\n                          piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = 0xa434c;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }" if (parenthesized_expression "(pGVar34 == (General_options *)0x0)" ( (binary_expression "pGVar34 == (General_options *)0x0" identifier == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                          piVar62[-1] = 0;\n                          piVar62[-2] = (int)"options";\n                          piVar62[-3] = 0x5c;\n                          piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                          piVar62[-5] = 0xa434c;\n                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                        }" { (expression_statement "piVar62[-1] = 0;" (assignment_expression "piVar62[-1] = 0" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-2] = (int)"options";" (assignment_expression "piVar62[-2] = (int)"options"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"options"" ( (type_descriptor "int" primitive_type) ) (string_literal ""options"" " string_content "))) ;) (expression_statement "piVar62[-3] = 0x5c;" (assignment_expression "piVar62[-3] = 0x5c" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-4] = (int)"../../gold/parameters.h";" (assignment_expression "piVar62[-4] = (int)"../../gold/parameters.h"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/parameters.h"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/parameters.h"" " string_content "))) ;) comment (expression_statement "piVar62[-5] = 0xa434c;" (assignment_expression "piVar62[-5] = 0xa434c" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);" (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) })) (expression_statement "iVar50 = i * 4;" (assignment_expression "iVar50 = i * 4" identifier = (binary_expression "i * 4" identifier * number_literal)) ;) (expression_statement "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                                  ._M_impl._M_start[i];" (subscript_expression "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                                  ._M_impl._M_start[i]" (field_expression "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                                  ._M_impl._M_start" (field_expression "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                                  ._M_impl" (binary_expression "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold::Output_section*,_std" (assignment_expression "pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base<gold" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_.\n                                  super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.\n                                  output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) < identifier)) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) [ identifier ]) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_06" ( (binary_expression "Shdr_data<64> *)extraout_ECX_06" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_06" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "ppuVar57 = (undefined **)this;" (assignment_expression "ppuVar57 = (undefined **)this" identifier = (cast_expression "(undefined **)this" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (goto_statement "goto LAB_000a2f0d;" goto statement_identifier ;) })) (if_statement "if (pGVar34 == (General_options *)0x0) {\n                        piVar62[-1] = 0;\n                        piVar62[-2] = (int)"options";\n                        piVar62[-3] = 0x5c;\n                        piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa43a7;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }" if (parenthesized_expression "(pGVar34 == (General_options *)0x0)" ( (binary_expression "pGVar34 == (General_options *)0x0" identifier == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        piVar62[-1] = 0;\n                        piVar62[-2] = (int)"options";\n                        piVar62[-3] = 0x5c;\n                        piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa43a7;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }" { (expression_statement "piVar62[-1] = 0;" (assignment_expression "piVar62[-1] = 0" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-2] = (int)"options";" (assignment_expression "piVar62[-2] = (int)"options"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"options"" ( (type_descriptor "int" primitive_type) ) (string_literal ""options"" " string_content "))) ;) (expression_statement "piVar62[-3] = 0x5c;" (assignment_expression "piVar62[-3] = 0x5c" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-4] = (int)"../../gold/parameters.h";" (assignment_expression "piVar62[-4] = (int)"../../gold/parameters.h"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/parameters.h"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/parameters.h"" " string_content "))) ;) comment comment (expression_statement "piVar62[-5] = 0xa43a7;" (assignment_expression "piVar62[-5] = 0xa43a7" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);" (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) })) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_06" ( (binary_expression "Shdr_data<64> *)extraout_ECX_06" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_06" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "uVar69 = i;" (assignment_expression "uVar69 = i" identifier = identifier) ;) (if_statement "if ((pGVar34->print_gc_sections_).value == false) goto LAB_000a2c3a;" if (parenthesized_expression "((pGVar34->print_gc_sections_).value == false)" ( (binary_expression "(pGVar34->print_gc_sections_).value == false" (field_expression "(pGVar34->print_gc_sections_).value" (parenthesized_expression "(pGVar34->print_gc_sections_)" ( (field_expression "pGVar34->print_gc_sections_" identifier -> field_identifier) )) . field_identifier) == false) )) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;)) (expression_statement "pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                name_._M_dataplus._M_p;" (assignment_expression "pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                name_._M_dataplus._M_p" identifier = (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                name_._M_dataplus._M_p" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                name_._M_dataplus" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                name_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier)) ;) (expression_statement "p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                _vptr_Object[0x10];" (assignment_expression "p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                _vptr_Object[0x10]" identifier = (subscript_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                _vptr_Object[0x10]" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                                _vptr_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var36 == do_section_name) {\n                        piVar62[-2] = i;\n                        piVar62[-3] = (int)&this->elf_file_;\n                        piVar62[-4] = (int)&offset;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa3909;\n                        elfcpp::Elf_file<64,_false,_gold::Object>::section_name\n                                  ((Elf_file<64,_false,_gold::Object> *)piVar62[-3],piVar62[-2]);\n                        puVar60 = piVar62 + -3;\n                      }\n                      else {\n                        piVar62[-2] = i;\n                        piVar62[-3] = (int)this;\n                        puVar60 = piVar62 + -4;\n                        piVar62[-4] = (int)&offset;\n                        piVar62[-5] = 0xa42a2;\n                        (*p_Var36)();\n                      }" if (parenthesized_expression "(p_Var36 == do_section_name)" ( (binary_expression "p_Var36 == do_section_name" identifier == identifier) )) (compound_statement "{\n                        piVar62[-2] = i;\n                        piVar62[-3] = (int)&this->elf_file_;\n                        piVar62[-4] = (int)&offset;\n                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa3909;\n                        elfcpp::Elf_file<64,_false,_gold::Object>::section_name\n                                  ((Elf_file<64,_false,_gold::Object> *)piVar62[-3],piVar62[-2]);\n                        puVar60 = piVar62 + -3;\n                      }" { (expression_statement "piVar62[-2] = i;" (assignment_expression "piVar62[-2] = i" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-3] = (int)&this->elf_file_;" (assignment_expression "piVar62[-3] = (int)&this->elf_file_" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)&this->elf_file_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this->elf_file_" & (field_expression "this->elf_file_" identifier -> field_identifier)))) ;) (expression_statement "piVar62[-4] = (int)&offset;" (assignment_expression "piVar62[-4] = (int)&offset" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&offset" & identifier))) ;) comment (expression_statement "piVar62[-5] = 0xa3909;" (assignment_expression "piVar62[-5] = 0xa3909" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "elfcpp::Elf_file<64,_false,_gold::Object>::section_name\n                                  ((Elf_file<64,_false,_gold::Object> *)piVar62[-3],piVar62[-2]);" statement_identifier (ERROR "::Elf_file<64,_false,_gold::Object>::section_name\n                                  ((Elf_file<64,_false,_gold:" : : (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : : identifier > : : identifier ( ( (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) :) : (expression_statement "Object> *)piVar62[-3],piVar62[-2]);" (comma_expression "Object> *)piVar62[-3],piVar62[-2]" (binary_expression "Object> *)piVar62[-3]" identifier > (pointer_expression "*)piVar62[-3]" * (ERROR ")" )) (subscript_expression "piVar62[-3]" identifier [ number_literal ]))) , (subscript_expression "piVar62[-2]" identifier [ number_literal ])) (ERROR ")" )) ;)) (expression_statement "puVar60 = piVar62 + -3;" (assignment_expression "puVar60 = piVar62 + -3" identifier = (binary_expression "piVar62 + -3" identifier + number_literal)) ;) }) (else_clause "else {\n                        piVar62[-2] = i;\n                        piVar62[-3] = (int)this;\n                        puVar60 = piVar62 + -4;\n                        piVar62[-4] = (int)&offset;\n                        piVar62[-5] = 0xa42a2;\n                        (*p_Var36)();\n                      }" else (compound_statement "{\n                        piVar62[-2] = i;\n                        piVar62[-3] = (int)this;\n                        puVar60 = piVar62 + -4;\n                        piVar62[-4] = (int)&offset;\n                        piVar62[-5] = 0xa42a2;\n                        (*p_Var36)();\n                      }" { (expression_statement "piVar62[-2] = i;" (assignment_expression "piVar62[-2] = i" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-3] = (int)this;" (assignment_expression "piVar62[-3] = (int)this" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "puVar60 = piVar62 + -4;" (assignment_expression "puVar60 = piVar62 + -4" identifier = (binary_expression "piVar62 + -4" identifier + number_literal)) ;) (expression_statement "piVar62[-4] = (int)&offset;" (assignment_expression "piVar62[-4] = (int)&offset" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&offset" & identifier))) ;) (expression_statement "piVar62[-5] = 0xa42a2;" (assignment_expression "piVar62[-5] = 0xa42a2" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*p_Var36)();" (call_expression "(*p_Var36)()" (parenthesized_expression "(*p_Var36)" ( (pointer_expression "*p_Var36" * identifier) )) (argument_list "()" ( ))) ;) }))) (expression_statement "pSVar51 = (Sized_relobj_file<64,_false> *)offset;" (assignment_expression "pSVar51 = (Sized_relobj_file<64,_false> *)offset" identifier = (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset" ( (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) ))) ;) (expression_statement "pcVar28 = program_name;" (assignment_expression "pcVar28 = program_name" identifier = identifier) ;) (expression_statement "puVar60[-1] = "%s: removing unused section from \'%s\' in file \'%s\'";" (assignment_expression "puVar60[-1] = "%s: removing unused section from \'%s\' in file \'%s\'"" (subscript_expression "puVar60[-1]" identifier [ number_literal ]) = (string_literal ""%s: removing unused section from \'%s\' in file \'%s\'"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ")) ;) (expression_statement "puVar60[-2] = 0xa3934;" (assignment_expression "puVar60[-2] = 0xa3934" (subscript_expression "puVar60[-2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "uVar39 = gettext();" (assignment_expression "uVar39 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar60[2] = pcVar22;" (assignment_expression "puVar60[2] = pcVar22" (subscript_expression "puVar60[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar60[1] = pSVar51;" (assignment_expression "puVar60[1] = pSVar51" (subscript_expression "puVar60[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*puVar60 = pcVar28;" (assignment_expression "*puVar60 = pcVar28" (pointer_expression "*puVar60" * identifier) = identifier) ;) (expression_statement "puVar60[-1] = uVar39;" (assignment_expression "puVar60[-1] = uVar39" (subscript_expression "puVar60[-1]" identifier [ number_literal ]) = identifier) ;) comment (expression_statement "puVar60[-2] = 0xa394e;" (assignment_expression "puVar60[-2] = 0xa394e" (subscript_expression "puVar60[-2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "gold_info((char *)puVar60[-1]);" (call_expression "gold_info((char *)puVar60[-1])" identifier (argument_list "((char *)puVar60[-1])" ( (cast_expression "(char *)puVar60[-1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar60[-1]" identifier [ number_literal ])) ))) ;) (expression_statement "piVar62 = puVar60 + 3;" (assignment_expression "piVar62 = puVar60 + 3" identifier = (binary_expression "puVar60 + 3" identifier + number_literal)) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_14;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_14" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_14" ( (binary_expression "Shdr_data<64> *)extraout_ECX_14" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_14" * (ERROR ")" )) identifier)) ))) ;) if ( ( (ERROR "Sized_relobj_file<64,_false> *)offset !=\n                          (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                        puVar60[-1] = (Sized_relobj_file<64,_false> *)offset;\n                        puVar60[-2] = 0xa3968;\n                        operator_delete((void *)puVar60[-1]);\n                        piVar62 = puVar60 + 3;\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_15;\n                      }\nLAB_000a4181:\n                      ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                      uVar69 = i;\n                      goto LAB_000a2c3a;\n                    }\n                    SVar49 = shdr;\n                    if (pGVar34->icf_status_ != ICF_NONE) goto LAB_000a2cf0;\n                  }\n                  if (pOVar44 != (Output_section *)0x2)" (comma_expression "Sized_relobj_file<64,_false> *)offset !=\n                          (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset !=\n                          (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier)) != (parenthesized_expression "(Sized_relobj_file<64,_false> *)&stack0xffffff84)" ( (comma_expression "Sized_relobj_file<64,_false> *)&stack0xffffff84" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)&stack0xffffff84" identifier > (pointer_expression "*)&stack0xffffff84" * (ERROR ")" )) (pointer_expression "&stack0xffffff84" & identifier)))) )))) (compound_statement "{\n                        puVar60[-1] = (Sized_relobj_file<64,_false> *)offset;\n                        puVar60[-2] = 0xa3968;\n                        operator_delete((void *)puVar60[-1]);\n                        piVar62 = puVar60 + 3;\n                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_15;\n                      }" { (expression_statement "puVar60[-1] = (Sized_relobj_file<64,_false> *)offset;" (assignment_expression "puVar60[-1] = (Sized_relobj_file<64,_false> *)offset" (subscript_expression "puVar60[-1]" identifier [ number_literal ]) = (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset" ( (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) ))) ;) (expression_statement "puVar60[-2] = 0xa3968;" (assignment_expression "puVar60[-2] = 0xa3968" (subscript_expression "puVar60[-2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "operator_delete((void *)puVar60[-1]);" (call_expression "operator_delete((void *)puVar60[-1])" identifier (argument_list "((void *)puVar60[-1])" ( (cast_expression "(void *)puVar60[-1]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar60[-1]" identifier [ number_literal ])) ))) ;) (expression_statement "piVar62 = puVar60 + 3;" (assignment_expression "piVar62 = puVar60 + 3" identifier = (binary_expression "puVar60 + 3" identifier + number_literal)) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_15;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_15" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_15" ( (binary_expression "Shdr_data<64> *)extraout_ECX_15" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_15" * (ERROR ")" )) identifier)) ))) ;) }) identifier : (assignment_expression "ppuVar57 = &_GLOBAL_OFFSET_TABLE_" identifier = (pointer_expression "&_GLOBAL_OFFSET_TABLE_" & identifier)) ; (assignment_expression "uVar69 = i" identifier = identifier) ; goto identifier ; } (call_expression "SVar49 = shdr;\n                    if (pGVar34->icf_status_ != ICF_NONE)" (assignment_expression "SVar49 = shdr" identifier = identifier) (ERROR ";\n                    if" ; if) (argument_list "(pGVar34->icf_status_ != ICF_NONE)" ( (binary_expression "pGVar34->icf_status_ != ICF_NONE" (field_expression "pGVar34->icf_status_" identifier -> field_identifier) != identifier) ))) identifier (call_expression "LAB_000a2cf0;\n                  }\n                  if (pOVar44 != (Output_section *)0x2)" identifier (ERROR ";\n                  }\n                  if" ; } if) (argument_list "(pOVar44 != (Output_section *)0x2)" ( (binary_expression "pOVar44 != (Output_section *)0x2" identifier != (cast_expression "(Output_section *)0x2" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )))) { (if_statement "if (bVar26) goto LAB_000a2b6b;" if (parenthesized_expression "(bVar26)" ( identifier )) (goto_statement "goto LAB_000a2b6b;" goto statement_identifier ;)) (labeled_statement "LAB_000a2d10:\n                    uVar69 = i;" statement_identifier : (expression_statement "uVar69 = i;" (assignment_expression "uVar69 = i" identifier = identifier) ;)) (expression_statement "iVar12 = *(int *)((int)puVar30 + iVar50);" (assignment_expression "iVar12 = *(int *)((int)puVar30 + iVar50)" identifier = (pointer_expression "*(int *)((int)puVar30 + iVar50)" * (cast_expression "(int *)((int)puVar30 + iVar50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar30 + iVar50)" ( (binary_expression "(int)puVar30 + iVar50" (cast_expression "(int)puVar30" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) ))))) ;) (expression_statement "piVar62[-4] = (int)&offset;" (assignment_expression "piVar62[-4] = (int)&offset" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&offset" & identifier))) ;) (expression_statement "piVar62[-5] = *(undefined4 *)((int)puVar31 + iVar50);" (assignment_expression "piVar62[-5] = *(undefined4 *)((int)puVar31 + iVar50)" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = (pointer_expression "*(undefined4 *)((int)puVar31 + iVar50)" * (cast_expression "(undefined4 *)((int)puVar31 + iVar50)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar31 + iVar50)" ( (binary_expression "(int)puVar31 + iVar50" (cast_expression "(int)puVar31" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) ))))) ;) (expression_statement "piVar62[-6] = iVar12;" (assignment_expression "piVar62[-6] = iVar12" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-7] = (int)local_124;" (assignment_expression "piVar62[-7] = (int)local_124" (subscript_expression "piVar62[-7]" identifier [ number_literal ]) = (cast_expression "(int)local_124" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-8] = (int)&shdr;" (assignment_expression "piVar62[-8] = (int)&shdr" (subscript_expression "piVar62[-8]" identifier [ number_literal ]) = (cast_expression "(int)&shdr" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&shdr" & identifier))) ;) (expression_statement "piVar62[-9] = (int)pbVar70;" (assignment_expression "piVar62[-9] = (int)pbVar70" (subscript_expression "piVar62[-9]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-10] = i;" (assignment_expression "piVar62[-10] = i" (subscript_expression "piVar62[-10]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-0xb] = (int)this;" (assignment_expression "piVar62[-0xb] = (int)this" (subscript_expression "piVar62[-0xb]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-0xc] = (int)layout;" (assignment_expression "piVar62[-0xc] = (int)layout" (subscript_expression "piVar62[-0xc]" identifier [ number_literal ]) = (cast_expression "(int)layout" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-0xd] = 0xa2d54;" (assignment_expression "piVar62[-0xd] = 0xa2d54" (subscript_expression "piVar62[-0xd]" identifier [ number_literal ]) = number_literal) ;) (binary_expression "pOVar44 = Layout::layout<64" (assignment_expression "pOVar44 = Layout" identifier = identifier) (ERROR "::layout" : : identifier) < number_literal) , identifier > ( (cast_expression "(Layout *)piVar62[-0xc]" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-0xc]" identifier [ number_literal ])) , ( (ERROR "Sized_relobj_file<64,_false> *)piVar62[-0xb],piVar62[-10],\n                                         (char *)piVar62[-9],(Shdr<64,_false> *)piVar62[-8],\n                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4]);\n                    *(Output_section **)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = pOVar44;" (comma_expression "Sized_relobj_file<64,_false> *)piVar62[-0xb],piVar62[-10],\n                                         (char *)piVar62[-9],(Shdr<64,_false> *)piVar62[-8],\n                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4])" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false> *)piVar62[-0xb],piVar62[-10],\n                                         (char *)piVar62[-9],(Shdr<64,_false> *)piVar62[-8],\n                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4])" (binary_expression "_false> *)piVar62[-0xb]" identifier > (pointer_expression "*)piVar62[-0xb]" * (ERROR ")" )) (subscript_expression "piVar62[-0xb]" identifier [ number_literal ]))) , (comma_expression "piVar62[-10],\n                                         (char *)piVar62[-9],(Shdr<64,_false> *)piVar62[-8],\n                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4])" (subscript_expression "piVar62[-10]" identifier [ number_literal ]) , (comma_expression "(char *)piVar62[-9],(Shdr<64,_false> *)piVar62[-8],\n                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4])" (cast_expression "(char *)piVar62[-9]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-9]" identifier [ number_literal ])) , (parenthesized_expression "(Shdr<64,_false> *)piVar62[-8],\n                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4])" ( (comma_expression "Shdr<64,_false> *)piVar62[-8],\n                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4]" (binary_expression "Shdr<64" identifier < number_literal) , (comma_expression "_false> *)piVar62[-8],\n                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4]" (binary_expression "_false> *)piVar62[-8]" identifier > (pointer_expression "*)piVar62[-8]" * (ERROR ")" )) (subscript_expression "piVar62[-8]" identifier [ number_literal ]))) , (comma_expression "piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4]" (subscript_expression "piVar62[-7]" identifier [ number_literal ]) , (comma_expression "piVar62[-6],piVar62[-5],(off_t *)piVar62[-4]" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) , (comma_expression "piVar62[-5],(off_t *)piVar62[-4]" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) , (cast_expression "(off_t *)piVar62[-4]" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))))))) )))))) ; (assignment_expression "*(Output_section **)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = pOVar44" (pointer_expression "*(Output_section **)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50)" * (cast_expression "(Output_section **)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50)" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50)" ( (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50" (field_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start" (field_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl" (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std" (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold" (cast_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) + identifier) )))) = identifier) ;) identifier = ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) ( (ERROR "(uint)offset._4_4_ & (uint)(Sized_relobj_file<64,_false> *)offset);\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::" (binary_expression "(uint)offset._4_4_ & (uint)(Sized_relobj_file<64,_false> *)offset)" (cast_expression "(uint)offset._4_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "offset._4_4_" identifier . field_identifier)) & (call_expression "(uint)(Sized_relobj_file<64,_false> *)offset)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(Sized_relobj_file<64,_false> *)offset)" ( (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier)) )))) ; (comma_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std" (assignment_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier)) , identifier) : :) (binary_expression "allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start + uVar69" (field_expression "allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start" (field_expression "allocator<long_long_unsigned_int>_>\n                              ._M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) + identifier) (ERROR ";\n                    if" ; if) ( ( (ERROR "Sized_relobj_file<64,_false> *)ppuVar57 ==\n                        (Sized_relobj_file<64,_false> *)0xffffffff) {\n                      *(undefined4 *)puVar18 = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + 4) = 0xffffffff;\n                    }\n                    else" (comma_expression "Sized_relobj_file<64,_false> *)ppuVar57 ==\n                        (Sized_relobj_file<64,_false> *)0xffffffff)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)ppuVar57 ==\n                        (Sized_relobj_file<64,_false> *)0xffffffff)" (binary_expression "_false> *)ppuVar57" identifier > (pointer_expression "*)ppuVar57" * (ERROR ")" )) identifier)) == (parenthesized_expression "(Sized_relobj_file<64,_false> *)0xffffffff)" ( (comma_expression "Sized_relobj_file<64,_false> *)0xffffffff" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0xffffffff" identifier > (pointer_expression "*)0xffffffff" * (ERROR ")" )) number_literal))) )))) (compound_statement "{\n                      *(undefined4 *)puVar18 = 0xffffffff;\n                      *(undefined4 *)((int)puVar18 + 4) = 0xffffffff;\n                    }" { (expression_statement "*(undefined4 *)puVar18 = 0xffffffff;" (assignment_expression "*(undefined4 *)puVar18 = 0xffffffff" (pointer_expression "*(undefined4 *)puVar18" * (cast_expression "(undefined4 *)puVar18" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined4 *)((int)puVar18 + 4) = 0xffffffff;" (assignment_expression "*(undefined4 *)((int)puVar18 + 4) = 0xffffffff" (pointer_expression "*(undefined4 *)((int)puVar18 + 4)" * (cast_expression "(undefined4 *)((int)puVar18 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + 4)" ( (binary_expression "(int)puVar18 + 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) }) else) { * ( (binary_expression "Sized_relobj_file<64" identifier < number_literal) , identifier > (pointer_expression "**)puVar18" * (pointer_expression "*)puVar18" * (ERROR ")" )) identifier)) = ( (ERROR "Sized_relobj_file<64,_false> *)offset;" (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) ;) (assignment_expression "*(_Base_ptr *)((int)puVar18 + 4) = offset._4_4_" (pointer_expression "*(_Base_ptr *)((int)puVar18 + 4)" * (cast_expression "(_Base_ptr *)((int)puVar18 + 4)" ( (type_descriptor "_Base_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + 4)" ( (binary_expression "(int)puVar18 + 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "offset._4_4_" identifier . field_identifier)) (ERROR ";\n                    }\n                    if" ; } if) ( (field_expression "(((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff) && (iVar12 != 0)) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.\n                      relocs_must_follow_section_writes_ = true;\n                    }\n                    SVar49.p_" (assignment_expression "(((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff) && (iVar12 != 0)) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.\n                      relocs_must_follow_section_writes_ = true" (field_expression "(((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff) && (iVar12 != 0)) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj.\n                      relocs_must_follow_section_writes_" (field_expression "(((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff) && (iVar12 != 0)) {\n                      (this->super_Sized_relobj<64,_false>).super_Relobj" (call_expression "(((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff) && (iVar12 != 0)) {\n                      (this->super_Sized_relobj<64,_false>)" (parenthesized_expression "(((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff) && (iVar12 != 0))" ( (binary_expression "((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff) && (iVar12 != 0)" (parenthesized_expression "((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff)" ( (binary_expression "(uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==\n                         0xffffffff" (call_expression "(uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_)" ( (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset & (uint)offset._4_4_" (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier)) & (cast_expression "(uint)offset._4_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "offset._4_4_" identifier . field_identifier))) ))) == number_literal) )) && (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) ))) )) (ERROR "{" {) (argument_list "(this->super_Sized_relobj<64,_false>)" ( (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier (ERROR ">" >) ))) . field_identifier) . field_identifier) = true) (ERROR ";\n                    }\n                    SVar49" ; } identifier) . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)" ( (binary_expression "Shdr_data<64> *" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*" * identifier)) )) ( (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (ERROR "_false> *)offset;\n                    if (bVar4 == false)" (call_expression "_false> *)offset;\n                    if (bVar4 == false)" (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier)) (ERROR ";\n                    if" ; if) (argument_list "(bVar4 == false)" ( (binary_expression "bVar4 == false" identifier == false) )))) { (if_statement "if (parameters->options_ == (General_options *)0x0) {\n                        piVar62[-1] = 0;\n                        piVar62[-2] = (int)"options";\n                        piVar62[-3] = 0x5c;\n                        piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa43fb;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }" if (parenthesized_expression "(parameters->options_ == (General_options *)0x0)" ( (binary_expression "parameters->options_ == (General_options *)0x0" (field_expression "parameters->options_" identifier -> field_identifier) == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        piVar62[-1] = 0;\n                        piVar62[-2] = (int)"options";\n                        piVar62[-3] = 0x5c;\n                        piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */\n                        piVar62[-5] = 0xa43fb;\n                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                      }" { (expression_statement "piVar62[-1] = 0;" (assignment_expression "piVar62[-1] = 0" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-2] = (int)"options";" (assignment_expression "piVar62[-2] = (int)"options"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"options"" ( (type_descriptor "int" primitive_type) ) (string_literal ""options"" " string_content "))) ;) (expression_statement "piVar62[-3] = 0x5c;" (assignment_expression "piVar62[-3] = 0x5c" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-4] = (int)"../../gold/parameters.h";" (assignment_expression "piVar62[-4] = (int)"../../gold/parameters.h"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/parameters.h"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/parameters.h"" " string_content "))) ;) comment comment (expression_statement "piVar62[-5] = 0xa43fb;" (assignment_expression "piVar62[-5] = 0xa43fb" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);" (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) })) if (parenthesized_expression "((parameters->options_->gdb_index_).value != false)" ( (binary_expression "(parameters->options_->gdb_index_).value != false" (field_expression "(parameters->options_->gdb_index_).value" (parenthesized_expression "(parameters->options_->gdb_index_)" ( (field_expression "parameters->options_->gdb_index_" (field_expression "parameters->options_" identifier -> field_identifier) -> field_identifier) )) . field_identifier) != false) )) { (expression_statement "bVar29 = false;" (assignment_expression "bVar29 = false" identifier = false) ;) (expression_statement "bVar75 = ((shdr.p_)->sh_flags & 2) == 0;" (assignment_expression "bVar75 = ((shdr.p_)->sh_flags & 2) == 0" identifier = (binary_expression "((shdr.p_)->sh_flags & 2) == 0" (parenthesized_expression "((shdr.p_)->sh_flags & 2)" ( (binary_expression "(shdr.p_)->sh_flags & 2" (field_expression "(shdr.p_)->sh_flags" (parenthesized_expression "(shdr.p_)" ( (field_expression "shdr.p_" identifier . field_identifier) )) -> field_identifier) & number_literal) )) == number_literal)) ;) if (parenthesized_expression "(bVar75)" ( identifier )) { (expression_statement "SVar49.p_ = (Shdr_data<64> *)0xc;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)0xc" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)0xc" ( (binary_expression "Shdr_data<64> *)0xc" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)0xc" * (ERROR ")" )) number_literal)) ))) ;) (expression_statement "pbVar65 = pbVar70;" (assignment_expression "pbVar65 = pbVar70" identifier = identifier) ;) (expression_statement "pbVar72 = (byte *)".debug_info";" (assignment_expression "pbVar72 = (byte *)".debug_info"" identifier = (cast_expression "(byte *)".debug_info"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_info"" " string_content "))) ;) do { if ( ( (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)SVar49.p_" identifier > (pointer_expression "*)SVar49.p_" * (ERROR ")" )) (field_expression "SVar49.p_" identifier . field_identifier))) == (ERROR "(Sized_relobj_file<64,_false> *)0x0) break;" (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x0)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x0" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier ;) (field_expression "SVar49.p_" identifier . field_identifier) = ( (binary_expression "Shdr_data<64" identifier < number_literal) > * (ERROR ")" )) ( (ERROR "(int)&((Sized_relobj_file<64,_false> *)\n                                               ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                            bVar29 = *pbVar65 < *pbVar72;\n                            bVar75 = *pbVar65 == *pbVar72;\n                            pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                            pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                          } while (bVar75);\n                          bVar76 = false;\n                          bVar29 = (!bVar29 && !bVar75) == bVar29;\n                          if (!bVar29)" (cast_expression "(int)&((Sized_relobj_file<64,_false> *)\n                                               ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((Sized_relobj_file<64,_false> *)\n                                               ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" & (parenthesized_expression "((Sized_relobj_file<64,_false> *)\n                                               ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" ( (binary_expression "(Sized_relobj_file<64,_false> *)\n                                               ((int)SVar49.p_ + -0x13c))->output_views_ + 3" (field_expression "(Sized_relobj_file<64,_false> *)\n                                               ((int)SVar49.p_ + -0x13c))->output_views_" (parenthesized_expression "(Sized_relobj_file<64,_false> *)\n                                               ((int)SVar49.p_ + -0x13c))" ( (comma_expression "Sized_relobj_file<64,_false> *)\n                                               ((int)SVar49.p_ + -0x13c)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)\n                                               ((int)SVar49.p_ + -0x13c)" identifier > (pointer_expression "*)\n                                               ((int)SVar49.p_ + -0x13c)" * (ERROR ")" )) (parenthesized_expression "((int)SVar49.p_ + -0x13c)" ( (binary_expression "(int)SVar49.p_ + -0x13c" (cast_expression "(int)SVar49.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "SVar49.p_" identifier . field_identifier)) + number_literal) ))))) )) -> field_identifier) + number_literal) )))) ; (assignment_expression "bVar29 = *pbVar65 < *pbVar72" identifier = (binary_expression "*pbVar65 < *pbVar72" (pointer_expression "*pbVar65" * identifier) < (pointer_expression "*pbVar72" * identifier))) ; (assignment_expression "bVar75 = *pbVar65 == *pbVar72" identifier = (binary_expression "*pbVar65 == *pbVar72" (pointer_expression "*pbVar65" * identifier) == (pointer_expression "*pbVar72" * identifier))) ; (assignment_expression "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar65 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar65 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ; (call_expression "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                          } while (bVar75)" (assignment_expression "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar72 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar72 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) (ERROR ";\n                          } while" ; } while) (argument_list "(bVar75)" ( identifier ))) ; (assignment_expression "bVar76 = false" identifier = false) ; (call_expression "bVar29 = (!bVar29 && !bVar75) == bVar29;\n                          if (!bVar29)" (assignment_expression "bVar29 = (!bVar29 && !bVar75) == bVar29" identifier = (binary_expression "(!bVar29 && !bVar75) == bVar29" (parenthesized_expression "(!bVar29 && !bVar75)" ( (binary_expression "!bVar29 && !bVar75" (unary_expression "!bVar29" ! identifier) && (unary_expression "!bVar75" ! identifier)) )) == identifier)) (ERROR ";\n                          if" ; if) (argument_list "(!bVar29)" ( (unary_expression "!bVar29" ! identifier) )))) { (expression_statement "SVar49.p_ = (Shdr_data<64> *)0xd;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)0xd" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)0xd" ( (binary_expression "Shdr_data<64> *)0xd" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)0xd" * (ERROR ")" )) number_literal)) ))) ;) (expression_statement "pbVar65 = pbVar70;" (assignment_expression "pbVar65 = pbVar70" identifier = identifier) ;) (expression_statement "pbVar72 = (byte *)".zdebug_info";" (assignment_expression "pbVar72 = (byte *)".zdebug_info"" identifier = (cast_expression "(byte *)".zdebug_info"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".zdebug_info"" " string_content "))) ;) do { if ( ( (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)SVar49.p_" identifier > (pointer_expression "*)SVar49.p_" * (ERROR ")" )) (field_expression "SVar49.p_" identifier . field_identifier))) == (ERROR "(Sized_relobj_file<64,_false> *)0x0) break;" (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x0)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x0" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier ;) (field_expression "SVar49.p_" identifier . field_identifier) = ( (binary_expression "Shdr_data<64" identifier < number_literal) > * (ERROR ")" )) ( (ERROR "(int)&((Sized_relobj_file<64,_false> *)\n                                                 ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                              bVar76 = *pbVar65 < *pbVar72;\n                              bVar29 = *pbVar65 == *pbVar72;\n                              pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                              pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                            } while (bVar29);\n                            bVar75 = false;\n                            bVar29 = (!bVar76 && !bVar29) == bVar76;\n                            if (!bVar29)" (cast_expression "(int)&((Sized_relobj_file<64,_false> *)\n                                                 ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((Sized_relobj_file<64,_false> *)\n                                                 ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" & (parenthesized_expression "((Sized_relobj_file<64,_false> *)\n                                                 ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" ( (binary_expression "(Sized_relobj_file<64,_false> *)\n                                                 ((int)SVar49.p_ + -0x13c))->output_views_ + 3" (field_expression "(Sized_relobj_file<64,_false> *)\n                                                 ((int)SVar49.p_ + -0x13c))->output_views_" (parenthesized_expression "(Sized_relobj_file<64,_false> *)\n                                                 ((int)SVar49.p_ + -0x13c))" ( (comma_expression "Sized_relobj_file<64,_false> *)\n                                                 ((int)SVar49.p_ + -0x13c)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)\n                                                 ((int)SVar49.p_ + -0x13c)" identifier > (pointer_expression "*)\n                                                 ((int)SVar49.p_ + -0x13c)" * (ERROR ")" )) (parenthesized_expression "((int)SVar49.p_ + -0x13c)" ( (binary_expression "(int)SVar49.p_ + -0x13c" (cast_expression "(int)SVar49.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "SVar49.p_" identifier . field_identifier)) + number_literal) ))))) )) -> field_identifier) + number_literal) )))) ; (assignment_expression "bVar76 = *pbVar65 < *pbVar72" identifier = (binary_expression "*pbVar65 < *pbVar72" (pointer_expression "*pbVar65" * identifier) < (pointer_expression "*pbVar72" * identifier))) ; (assignment_expression "bVar29 = *pbVar65 == *pbVar72" identifier = (binary_expression "*pbVar65 == *pbVar72" (pointer_expression "*pbVar65" * identifier) == (pointer_expression "*pbVar72" * identifier))) ; (assignment_expression "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar65 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar65 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ; (call_expression "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                            } while (bVar29)" (assignment_expression "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar72 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar72 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) (ERROR ";\n                            } while" ; } while) (argument_list "(bVar29)" ( identifier ))) ; (assignment_expression "bVar75 = false" identifier = false) ; (call_expression "bVar29 = (!bVar76 && !bVar29) == bVar76;\n                            if (!bVar29)" (assignment_expression "bVar29 = (!bVar76 && !bVar29) == bVar76" identifier = (binary_expression "(!bVar76 && !bVar29) == bVar76" (parenthesized_expression "(!bVar76 && !bVar29)" ( (binary_expression "!bVar76 && !bVar29" (unary_expression "!bVar76" ! identifier) && (unary_expression "!bVar29" ! identifier)) )) == identifier)) (ERROR ";\n                            if" ; if) (argument_list "(!bVar29)" ( (unary_expression "!bVar29" ! identifier) )))) { (expression_statement "SVar49.p_ = (Shdr_data<64> *)0xd;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)0xd" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)0xd" ( (binary_expression "Shdr_data<64> *)0xd" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)0xd" * (ERROR ")" )) number_literal)) ))) ;) (expression_statement "pbVar65 = pbVar70;" (assignment_expression "pbVar65 = pbVar70" identifier = identifier) ;) (expression_statement "pbVar72 = (byte *)".debug_types";" (assignment_expression "pbVar72 = (byte *)".debug_types"" identifier = (cast_expression "(byte *)".debug_types"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_types"" " string_content "))) ;) do { if ( ( (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)SVar49.p_" identifier > (pointer_expression "*)SVar49.p_" * (ERROR ")" )) (field_expression "SVar49.p_" identifier . field_identifier))) == (ERROR "(Sized_relobj_file<64,_false> *)0x0) break;" (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x0)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x0" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier ;) (field_expression "SVar49.p_" identifier . field_identifier) = ( (binary_expression "Shdr_data<64" identifier < number_literal) > * (ERROR ")" )) ( (ERROR "(int)&((Sized_relobj_file<64,_false> *)\n                                                   ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                bVar75 = *pbVar65 < *pbVar72;\n                                bVar29 = *pbVar65 == *pbVar72;\n                                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                              } while (bVar29);\n                              bVar76 = false;\n                              bVar29 = (!bVar75 && !bVar29) == bVar75;\n                              if (!bVar29)" (cast_expression "(int)&((Sized_relobj_file<64,_false> *)\n                                                   ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((Sized_relobj_file<64,_false> *)\n                                                   ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" & (parenthesized_expression "((Sized_relobj_file<64,_false> *)\n                                                   ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" ( (binary_expression "(Sized_relobj_file<64,_false> *)\n                                                   ((int)SVar49.p_ + -0x13c))->output_views_ + 3" (field_expression "(Sized_relobj_file<64,_false> *)\n                                                   ((int)SVar49.p_ + -0x13c))->output_views_" (parenthesized_expression "(Sized_relobj_file<64,_false> *)\n                                                   ((int)SVar49.p_ + -0x13c))" ( (comma_expression "Sized_relobj_file<64,_false> *)\n                                                   ((int)SVar49.p_ + -0x13c)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)\n                                                   ((int)SVar49.p_ + -0x13c)" identifier > (pointer_expression "*)\n                                                   ((int)SVar49.p_ + -0x13c)" * (ERROR ")" )) (parenthesized_expression "((int)SVar49.p_ + -0x13c)" ( (binary_expression "(int)SVar49.p_ + -0x13c" (cast_expression "(int)SVar49.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "SVar49.p_" identifier . field_identifier)) + number_literal) ))))) )) -> field_identifier) + number_literal) )))) ; (assignment_expression "bVar75 = *pbVar65 < *pbVar72" identifier = (binary_expression "*pbVar65 < *pbVar72" (pointer_expression "*pbVar65" * identifier) < (pointer_expression "*pbVar72" * identifier))) ; (assignment_expression "bVar29 = *pbVar65 == *pbVar72" identifier = (binary_expression "*pbVar65 == *pbVar72" (pointer_expression "*pbVar65" * identifier) == (pointer_expression "*pbVar72" * identifier))) ; (assignment_expression "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar65 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar65 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ; (call_expression "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                              } while (bVar29)" (assignment_expression "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar72 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar72 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) (ERROR ";\n                              } while" ; } while) (argument_list "(bVar29)" ( identifier ))) ; (assignment_expression "bVar76 = false" identifier = false) ; (call_expression "bVar29 = (!bVar75 && !bVar29) == bVar75;\n                              if (!bVar29)" (assignment_expression "bVar29 = (!bVar75 && !bVar29) == bVar75" identifier = (binary_expression "(!bVar75 && !bVar29) == bVar75" (parenthesized_expression "(!bVar75 && !bVar29)" ( (binary_expression "!bVar75 && !bVar29" (unary_expression "!bVar75" ! identifier) && (unary_expression "!bVar29" ! identifier)) )) == identifier)) (ERROR ";\n                              if" ; if) (argument_list "(!bVar29)" ( (unary_expression "!bVar29" ! identifier) )))) { (expression_statement "SVar49.p_ = (Shdr_data<64> *)0xe;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)0xe" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)0xe" ( (binary_expression "Shdr_data<64> *)0xe" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)0xe" * (ERROR ")" )) number_literal)) ))) ;) (expression_statement "pbVar65 = (byte *)".zdebug_types";" (assignment_expression "pbVar65 = (byte *)".zdebug_types"" identifier = (cast_expression "(byte *)".zdebug_types"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".zdebug_types"" " string_content "))) ;) (do_statement "do {\n                                  if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections;\n              piVar62[-5] = 0xa3e57;\n              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n              _M_realloc_insert<unsigned_int_const&>\n                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)piVar62[-4],\n                         (uint *)piVar62[-3],(uint *)piVar62[-2]);\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_21;\n            }\n            else {\n              *reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish = i;\n              reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n              ._M_finish = reloc_sections.\n                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                           _M_finish + 1;\n            }\n          }\n          else {\n            piVar62[-1] = (int)symtab;\n            piVar62[-2] = i;\n            piVar62[-3] = (int)pbVar70;\n            piVar62[-4] = (int)this;\n            piVar62[-5] = 0xa2406;\n            bVar29 = Object::handle_gnu_warning_section\n                               ((Object *)piVar62[-4],(char *)piVar62[-3],piVar62[-2],\n                                (Symbol_table *)piVar62[-1]);\n            bVar75 = !bVar29;\n            if (bVar29) {\n              bVar75 = false;\n              bVar29 = bVar4 == false;\n              if (bVar29) {\n                if (parameters->options_ == (General_options *)0x0) {\n                  piVar62[-1] = 0;\n                  piVar62[-2] = (int)"options";\n                  piVar62[-3] = 0x5c;\n                  piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa4433;\n                  do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                }\n                bVar75 = false;\n                bVar29 = (parameters->options_->shared_).value == false;\n                if (bVar29) {\n                  puVar19 = omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                            super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p +\n                            (i >> 5);\n                  bVar75 = false;\n                  *puVar19 = *puVar19 | 1 << ((byte)i & 0x1f);\n                  bVar29 = *puVar19 == 0;\n                }\n              }\n            }\n            iVar50 = 0x10;\n            pbVar65 = pbVar70;\n            pbVar72 = (byte *)".note.GNU-stack";\n            do {\n              pbVar71 = pbVar72;\n              if (iVar50 == 0) break;\n              iVar50 = iVar50 + -1;\n              pbVar71 = pbVar72 + (uint)bVar77 * -2 + 1;\n              bVar75 = *pbVar65 < *pbVar72;\n              bVar29 = *pbVar65 == *pbVar72;\n              pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n              pbVar72 = pbVar71;\n            } while (bVar29);" do (compound_statement "{\n                                  if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections;\n              piVar62[-5] = 0xa3e57;\n              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n              _M_realloc_insert<unsigned_int_const&>\n                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)piVar62[-4],\n                         (uint *)piVar62[-3],(uint *)piVar62[-2]);\n              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_21;\n            }" { (if_statement "if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections;\n              piVar62[-5] = 0xa3e57;\n              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n              _M_realloc_insert<unsigned_int_const&>\n                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)piVar62[-4],\n                         (uint *)piVar62[-3],(uint *)piVar62[-2]);" if (parenthesized_expression "((Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections;\n              piVar62[-5] = 0xa3e57;\n              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n              _M_realloc_insert<unsigned_int_const&>\n                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)piVar62[-4],\n                         (uint *)piVar62[-3],(uint *)piVar62[-2])" ( (comma_expression "(Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections;\n              piVar62[-5] = 0xa3e57;\n              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n              _M_realloc_insert<unsigned_int_const&>\n                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)piVar62[-4],\n                         (uint *)piVar62[-3],(uint *)piVar62[-2]" (subscript_expression "(Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections;\n              piVar62[-5] = 0xa3e57;\n              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n              _M_realloc_insert<unsigned_int_const&>\n                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)piVar62[-4]" (parenthesized_expression "(Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections;\n              piVar62[-5] = 0xa3e57;\n              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n              _M_realloc_insert<unsigned_int_const&>\n                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)" ( (comma_expression "Sized_relobj_file<64,_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)SVar49.p_ ==\n                                      (Sized_relobj_file<64,_false> *)0x0) break;\n                                  SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections" (binary_expression "_false> *)SVar49.p_" identifier > (pointer_expression "*)SVar49.p_" * (ERROR ")" )) (field_expression "SVar49.p_" identifier . field_identifier))) == (ERROR "(Sized_relobj_file<64,_false> *)0x0) break;" (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x0)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x0" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier ;) (assignment_expression "SVar49.p_ = (Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections" (field_expression "SVar49.p_" identifier . field_identifier) = (binary_expression "(Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)&reloc_sections" (parenthesized_expression "(Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int)" ( (comma_expression "Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int,_std" (assignment_expression "Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3] = (int)reloc_sections.\n                                 super__Vector_base<unsigned_int" (subscript_expression "Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i;\n              piVar62[-3]" (binary_expression "Shdr_data<64> *)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i" (binary_expression "Shdr_data<64" identifier < number_literal) > (assignment_expression "*)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2] = (int)&i" (pointer_expression "*)\n                                              ((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2]" * (ERROR ")" )) (subscript_expression "((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage) {\n              piVar62[-2]" (parenthesized_expression "((int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else {\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }\n              }\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage)" ( (ERROR "(int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);\n                                  bVar76 = *pbVar70 < *pbVar65;\n                                  bVar29 = *pbVar70 == *pbVar65;\n                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;\n                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29);\n                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage) {\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }\n                              else {\n                                *debug_types_sections.\n                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish = i;\n                                debug_types_sections.\n                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                _M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1;\n                                ppuVar57 = local_120;\n                              }\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage) {\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }\n                          else {\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }\n                        }\n                      }\n                    }\n                  }\n                }\n                else" (cast_expression "(int)&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" & (parenthesized_expression "((Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3)" ( (binary_expression "(Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3" (field_expression "(Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))->output_views_" (parenthesized_expression "(Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c))" ( (comma_expression "Sized_relobj_file<64,_false> *)\n                                                     ((int)SVar49.p_ + -0x13c)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)\n                                                     ((int)SVar49.p_ + -0x13c)" identifier > (pointer_expression "*)\n                                                     ((int)SVar49.p_ + -0x13c)" * (ERROR ")" )) (parenthesized_expression "((int)SVar49.p_ + -0x13c)" ( (binary_expression "(int)SVar49.p_ + -0x13c" (cast_expression "(int)SVar49.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "SVar49.p_" identifier . field_identifier)) + number_literal) ))))) )) -> field_identifier) + number_literal) )))) ; (assignment_expression "bVar76 = *pbVar70 < *pbVar65" identifier = (binary_expression "*pbVar70 < *pbVar65" (pointer_expression "*pbVar70" * identifier) < (pointer_expression "*pbVar65" * identifier))) ; (assignment_expression "bVar29 = *pbVar70 == *pbVar65" identifier = (binary_expression "*pbVar70 == *pbVar65" (pointer_expression "*pbVar70" * identifier) == (pointer_expression "*pbVar65" * identifier))) ; (assignment_expression "pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar70 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar70 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ; (call_expression "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                                } while (bVar29)" (assignment_expression "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar65 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar65 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) (ERROR ";\n                                } while" ; } while) (argument_list "(bVar29)" ( identifier ))) ; (call_expression "ppuVar57 = &_GLOBAL_OFFSET_TABLE_;\n                                if ((!bVar76 && !bVar29) != bVar76)" (assignment_expression "ppuVar57 = &_GLOBAL_OFFSET_TABLE_" identifier = (pointer_expression "&_GLOBAL_OFFSET_TABLE_" & identifier)) (ERROR ";\n                                if" ; if) (argument_list "((!bVar76 && !bVar29) != bVar76)" ( (binary_expression "(!bVar76 && !bVar29) != bVar76" (parenthesized_expression "(!bVar76 && !bVar29)" ( (binary_expression "!bVar76 && !bVar29" (unary_expression "!bVar76" ! identifier) && (unary_expression "!bVar29" ! identifier)) )) != identifier) ))) identifier (call_expression "LAB_000a23a1;\n                              }\n                              if (debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage)" identifier (ERROR ";\n                              }\n                              if" ; } if) (argument_list "(debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage)" ( (binary_expression "debug_types_sections.\n                                  super__Vector_base<unsigned_int" (field_expression "debug_types_sections.\n                                  super__Vector_base" identifier . field_identifier) < identifier) , (ERROR "_std::" identifier : :) (binary_expression "allocator<unsigned_int>_>.\n                                  _M_impl._M_finish ==\n                                  debug_types_sections.\n                                  super__Vector_base<unsigned_int" (field_expression "allocator<unsigned_int>_>.\n                                  _M_impl._M_finish" (field_expression "allocator<unsigned_int>_>.\n                                  _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) == (binary_expression "debug_types_sections.\n                                  super__Vector_base<unsigned_int" (field_expression "debug_types_sections.\n                                  super__Vector_base" identifier . field_identifier) < identifier)) , (ERROR "_std::" identifier : :) (field_expression "allocator<unsigned_int>_>.\n                                  _M_impl._M_end_of_storage" (field_expression "allocator<unsigned_int>_>.\n                                  _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ))) (compound_statement "{\n                                piVar62[-2] = (int)&i;\n                                piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;\n                                piVar62[-4] = (int)&debug_types_sections;\n                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */\n                                piVar62[-5] = 0xa42d3;\n                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;\n                                ppuVar57 = local_120;\n                              }" { (expression_statement "piVar62[-2] = (int)&i;" (assignment_expression "piVar62[-2] = (int)&i" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)&i" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&i" & identifier))) ;) (ERROR "piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std::" (comma_expression "piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int,_std" (assignment_expression "piVar62[-3] = (int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (binary_expression "(int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base<unsigned_int" (cast_expression "(int)debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "debug_types_sections.\n                                                                                                      \n                                                  super__Vector_base" identifier . field_identifier)) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish;" (field_expression "allocator<unsigned_int>_>\n                                                  ._M_impl._M_finish" (field_expression "allocator<unsigned_int>_>\n                                                  ._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "piVar62[-4] = (int)&debug_types_sections;" (assignment_expression "piVar62[-4] = (int)&debug_types_sections" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&debug_types_sections" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&debug_types_sections" & identifier))) ;) comment (expression_statement "piVar62[-5] = 0xa42d3;" (assignment_expression "piVar62[-5] = 0xa42d3" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                                _M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);" statement_identifier (ERROR "::vector<unsigned_int,_std::allocator<unsigned_int>_>:" : : (comma_expression "vector<unsigned_int,_std" (binary_expression "vector<unsigned_int" identifier < identifier) , identifier) : : (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > :) : (expression_statement "_M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);" (binary_expression "_M_realloc_insert<unsigned_int_const&>\n                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2])" (binary_expression "_M_realloc_insert<unsigned_int_const" identifier < identifier) (ERROR "&" &) > (parenthesized_expression "((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2])" ( (parenthesized_expression "(vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2])" ( (ERROR "vector<unsigned_int,_std::" (comma_expression "vector<unsigned_int,_std" (binary_expression "vector<unsigned_int" identifier < identifier) , identifier) : :) (comma_expression "allocator<unsigned_int>_> *)\n                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]" (binary_expression "allocator<unsigned_int>_> *)\n                                           piVar62[-4]" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > (pointer_expression "*)\n                                           piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (comma_expression "(uint *)piVar62[-3],(uint *)piVar62[-2]" (cast_expression "(uint *)piVar62[-3]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (cast_expression "(uint *)piVar62[-2]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])))) )) ))) ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_31" ( (binary_expression "Shdr_data<64> *)extraout_ECX_31" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_31" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "ppuVar57 = local_120;" (assignment_expression "ppuVar57 = local_120" identifier = identifier) ;) }) else { * identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier = identifier ; identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . (comma_expression "_M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int,_std" (assignment_expression "_M_impl._M_finish =\n                                     debug_types_sections.\n                                     super__Vector_base<unsigned_int" (field_expression "_M_impl._M_finish" identifier . field_identifier) = (binary_expression "debug_types_sections.\n                                     super__Vector_base<unsigned_int" (field_expression "debug_types_sections.\n                                     super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : : (binary_expression "allocator<unsigned_int>_>\n                                     ._M_impl._M_finish + 1" (field_expression "allocator<unsigned_int>_>\n                                     ._M_impl._M_finish" (field_expression "allocator<unsigned_int>_>\n                                     ._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) + number_literal) ; (assignment_expression "ppuVar57 = local_120" identifier = identifier) ; } goto (call_expression "LAB_000a23a1;\n                            }\n                          }\n                          if (debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage)" identifier (ERROR ";\n                            }\n                          }\n                          if" ; } } if) (argument_list "(debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage)" ( (binary_expression "debug_info_sections.\n                              super__Vector_base<unsigned_int" (field_expression "debug_info_sections.\n                              super__Vector_base" identifier . field_identifier) < identifier) , (ERROR "_std::" identifier : :) (binary_expression "allocator<unsigned_int>_>.\n                              _M_impl._M_finish ==\n                              debug_info_sections.\n                              super__Vector_base<unsigned_int" (field_expression "allocator<unsigned_int>_>.\n                              _M_impl._M_finish" (field_expression "allocator<unsigned_int>_>.\n                              _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) == (binary_expression "debug_info_sections.\n                              super__Vector_base<unsigned_int" (field_expression "debug_info_sections.\n                              super__Vector_base" identifier . field_identifier) < identifier)) , (ERROR "_std::" identifier : :) (field_expression "allocator<unsigned_int>_>.\n                              _M_impl._M_end_of_storage" (field_expression "allocator<unsigned_int>_>.\n                              _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ))) (compound_statement "{\n                            piVar62[-2] = (int)&i;\n                            piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;\n                            piVar62[-4] = (int)&debug_info_sections;\n                            piVar62[-5] = 0xa428a;\n                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);\n                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;\n                          }" { (expression_statement "piVar62[-2] = (int)&i;" (assignment_expression "piVar62[-2] = (int)&i" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)&i" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&i" & identifier))) ;) (ERROR "piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std::" (comma_expression "piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int,_std" (assignment_expression "piVar62[-3] = (int)debug_info_sections.\n                                               super__Vector_base<unsigned_int" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (binary_expression "(int)debug_info_sections.\n                                               super__Vector_base<unsigned_int" (cast_expression "(int)debug_info_sections.\n                                               super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "debug_info_sections.\n                                               super__Vector_base" identifier . field_identifier)) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>\n                                               ._M_impl._M_finish;" (field_expression "allocator<unsigned_int>_>\n                                               ._M_impl._M_finish" (field_expression "allocator<unsigned_int>_>\n                                               ._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "piVar62[-4] = (int)&debug_info_sections;" (assignment_expression "piVar62[-4] = (int)&debug_info_sections" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&debug_info_sections" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&debug_info_sections" & identifier))) ;) (expression_statement "piVar62[-5] = 0xa428a;" (assignment_expression "piVar62[-5] = 0xa428a" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n                            _M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);" statement_identifier (ERROR "::vector<unsigned_int,_std::allocator<unsigned_int>_>:" : : (comma_expression "vector<unsigned_int,_std" (binary_expression "vector<unsigned_int" identifier < identifier) , identifier) : : (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > :) : (expression_statement "_M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);" (binary_expression "_M_realloc_insert<unsigned_int_const&>\n                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2])" (binary_expression "_M_realloc_insert<unsigned_int_const" identifier < identifier) (ERROR "&" &) > (parenthesized_expression "((vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2])" ( (parenthesized_expression "(vector<unsigned_int,_std::allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2])" ( (ERROR "vector<unsigned_int,_std::" (comma_expression "vector<unsigned_int,_std" (binary_expression "vector<unsigned_int" identifier < identifier) , identifier) : :) (comma_expression "allocator<unsigned_int>_> *)\n                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]" (binary_expression "allocator<unsigned_int>_> *)\n                                       piVar62[-4]" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) > (pointer_expression "*)\n                                       piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (comma_expression "(uint *)piVar62[-3],(uint *)piVar62[-2]" (cast_expression "(uint *)piVar62[-3]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (cast_expression "(uint *)piVar62[-2]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])))) )) ))) ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_30" ( (binary_expression "Shdr_data<64> *)extraout_ECX_30" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_30" * (ERROR ")" )) identifier)) ))) ;) }) else (compound_statement "{\n                            *debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;\n                            debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;\n                          }" { (ERROR "*debug_info_sections.\n                             super__Vector_base<unsigned_int,_std::" (comma_expression "*debug_info_sections.\n                             super__Vector_base<unsigned_int,_std" (binary_expression "*debug_info_sections.\n                             super__Vector_base<unsigned_int" (pointer_expression "*debug_info_sections.\n                             super__Vector_base" * (field_expression "debug_info_sections.\n                             super__Vector_base" identifier . field_identifier)) < identifier) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i;" (assignment_expression "allocator<unsigned_int>_>._M_impl\n                             ._M_finish = i" (field_expression "allocator<unsigned_int>_>._M_impl\n                             ._M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = identifier) ;) (ERROR "debug_info_sections.\n                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std::" (comma_expression "debug_info_sections.\n                            super__Vector_base<unsigned_int,_std" (binary_expression "debug_info_sections.\n                            super__Vector_base<unsigned_int" (field_expression "debug_info_sections.\n                            super__Vector_base" identifier . field_identifier) < identifier) , identifier) : : (comma_expression "allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int,_std" (assignment_expression "allocator<unsigned_int>_>._M_impl.\n                            _M_finish = debug_info_sections.\n                                        super__Vector_base<unsigned_int" (field_expression "allocator<unsigned_int>_>._M_impl.\n                            _M_finish" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (binary_expression "debug_info_sections.\n                                        super__Vector_base<unsigned_int" (field_expression "debug_info_sections.\n                                        super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1;" (binary_expression "allocator<unsigned_int>_>\n                                        ._M_impl._M_finish + 1" (field_expression "allocator<unsigned_int>_>\n                                        ._M_impl._M_finish" (field_expression "allocator<unsigned_int>_>\n                                        ._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) + number_literal) ;) }) } } } } } else) (compound_statement "{\n                  iVar50 = i * 4;\n                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }\n                }" { (expression_statement "iVar50 = i * 4;" (assignment_expression "iVar50 = i * 4" identifier = (binary_expression "i * 4" identifier * number_literal)) ;) (if_statement "if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }\n                  else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }" if (parenthesized_expression "((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0))" ( (binary_expression "(this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)" (parenthesized_expression "(this->is_deferred_layout_ == false)" ( (binary_expression "this->is_deferred_layout_ == false" (field_expression "this->is_deferred_layout_" identifier -> field_identifier) == false) )) || (parenthesized_expression "(((shdr.p_)->sh_flags & 2) == 0)" ( (binary_expression "((shdr.p_)->sh_flags & 2) == 0" (parenthesized_expression "((shdr.p_)->sh_flags & 2)" ( (binary_expression "(shdr.p_)->sh_flags & 2" (field_expression "(shdr.p_)->sh_flags" (parenthesized_expression "(shdr.p_)" ( (field_expression "shdr.p_" identifier . field_identifier) )) -> field_identifier) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n                    if (!bVar26) goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                  }" { (if_statement "if (!bVar26) goto LAB_000a2d10;" if (parenthesized_expression "(!bVar26)" ( (unary_expression "!bVar26" ! identifier) )) (goto_statement "goto LAB_000a2d10;" goto statement_identifier ;)) (labeled_statement "LAB_000a2b6b:\n                    *(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;" statement_identifier : (expression_statement "*(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1;" (assignment_expression "*(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50) = 1" (pointer_expression "*(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50)" * (cast_expression "(undefined4 *)\n                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50)" ( (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start + iVar50" (field_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl._M_start" (field_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                           ._M_impl" (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold::Output_section*,_std" (binary_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base<gold" (cast_expression "(int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                           super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) + identifier) )))) = number_literal) ;)) (ERROR "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::" (comma_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std" (assignment_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;" (field_expression "allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start" (field_expression "allocator<long_long_unsigned_int>_>\n                              ._M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + i) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar18 + i) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar18 + i)" * (cast_expression "(undefined4 *)(puVar18 + i)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + i)" ( (binary_expression "puVar18 + i" identifier + identifier) )))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;" (assignment_expression "*(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff" (pointer_expression "*(undefined4 *)((int)puVar18 + i * 8 + 4)" * (cast_expression "(undefined4 *)((int)puVar18 + i * 8 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + i * 8 + 4)" ( (binary_expression "(int)puVar18 + i * 8 + 4" (binary_expression "(int)puVar18 + i * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "i * 8" identifier * number_literal)) + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }" else (compound_statement "{\n                    uVar39 = puVar31[i];\n                    uVar11 = puVar30[i];\n                    piVar62[-1] = 0xa3ea6;\n                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);\n                    local_68 = uVar11;\n                    local_6c = uVar69;\n                    local_64 = uVar39;\n                    local_60 = (Input_file *)local_134->sh_name;\n                    local_58 = (int)local_134->sh_flags;\n                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);\n                    local_50 = *(undefined4 *)&local_134->sh_addr;\n                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);\n                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;\n                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);\n                    local_40 = *(pointer *)&local_134->sh_size;\n                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);\n                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;\n                    local_5c = local_124;\n                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */\n                    piVar62[-5] = 0xa3f32;\n                    std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;\n                    if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;\n                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;\n                    *(undefined4 *)(puVar18 + i) = 0xffffffff;\n                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n                    ppuVar57 = (undefined **)local_124;\n                  }" { (expression_statement "uVar39 = puVar31[i];" (assignment_expression "uVar39 = puVar31[i]" identifier = (subscript_expression "puVar31[i]" identifier [ identifier ])) ;) (expression_statement "uVar11 = puVar30[i];" (assignment_expression "uVar11 = puVar30[i]" identifier = (subscript_expression "puVar30[i]" identifier [ identifier ])) ;) (expression_statement "piVar62[-1] = 0xa3ea6;" (assignment_expression "piVar62[-1] = 0xa3ea6" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = number_literal) ;) (ERROR "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::" (comma_expression "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>\n                    ::basic_string((basic_string<char,_std::char_traits<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) > : : identifier ( ( (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : :) (expression_statement "allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);" (comma_expression "allocator<char>_>\n                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2])" (binary_expression "allocator<char>_>\n                                    *)*piVar62" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (pointer_expression "*)*piVar62" * (ERROR ")" )) (pointer_expression "*piVar62" * identifier))) , (comma_expression "(char *)piVar62[1],(allocator<char> *)piVar62[2])" (cast_expression "(char *)piVar62[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[1]" identifier [ number_literal ])) , (parenthesized_expression "(allocator<char> *)piVar62[2])" ( (binary_expression "allocator<char> *)piVar62[2]" (binary_expression "allocator<char" identifier < identifier) > (pointer_expression "*)piVar62[2]" * (ERROR ")" )) (subscript_expression "piVar62[2]" identifier [ number_literal ]))) )))) ;) (expression_statement "local_68 = uVar11;" (assignment_expression "local_68 = uVar11" identifier = identifier) ;) (expression_statement "local_6c = uVar69;" (assignment_expression "local_6c = uVar69" identifier = identifier) ;) (expression_statement "local_64 = uVar39;" (assignment_expression "local_64 = uVar39" identifier = identifier) ;) (expression_statement "local_60 = (Input_file *)local_134->sh_name;" (assignment_expression "local_60 = (Input_file *)local_134->sh_name" identifier = (cast_expression "(Input_file *)local_134->sh_name" ( (type_descriptor "Input_file *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_134->sh_name" identifier -> field_identifier))) ;) (expression_statement "local_58 = (int)local_134->sh_flags;" (assignment_expression "local_58 = (int)local_134->sh_flags" identifier = (cast_expression "(int)local_134->sh_flags" ( (type_descriptor "int" primitive_type) ) (field_expression "local_134->sh_flags" identifier -> field_identifier))) ;) (expression_statement "local_54 = *(uint *)((int)&local_134->sh_flags + 4);" (assignment_expression "local_54 = *(uint *)((int)&local_134->sh_flags + 4)" identifier = (pointer_expression "*(uint *)((int)&local_134->sh_flags + 4)" * (cast_expression "(uint *)((int)&local_134->sh_flags + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_134->sh_flags + 4)" ( (binary_expression "(int)&local_134->sh_flags + 4" (cast_expression "(int)&local_134->sh_flags" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_flags" & (field_expression "local_134->sh_flags" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_50 = *(undefined4 *)&local_134->sh_addr;" (assignment_expression "local_50 = *(undefined4 *)&local_134->sh_addr" identifier = (pointer_expression "*(undefined4 *)&local_134->sh_addr" * (cast_expression "(undefined4 *)&local_134->sh_addr" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_134->sh_addr" & (field_expression "local_134->sh_addr" identifier -> field_identifier))))) ;) (expression_statement "local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);" (assignment_expression "local_4c = *(Xindex **)((int)&local_134->sh_addr + 4)" identifier = (pointer_expression "*(Xindex **)((int)&local_134->sh_addr + 4)" * (cast_expression "(Xindex **)((int)&local_134->sh_addr + 4)" ( (type_descriptor "Xindex **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134->sh_addr + 4)" ( (binary_expression "(int)&local_134->sh_addr + 4" (cast_expression "(int)&local_134->sh_addr" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_addr" & (field_expression "local_134->sh_addr" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_48 = *(Compressed_section_map **)&local_134->sh_offset;" (assignment_expression "local_48 = *(Compressed_section_map **)&local_134->sh_offset" identifier = (pointer_expression "*(Compressed_section_map **)&local_134->sh_offset" * (cast_expression "(Compressed_section_map **)&local_134->sh_offset" ( (type_descriptor "Compressed_section_map **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_134->sh_offset" & (field_expression "local_134->sh_offset" identifier -> field_identifier))))) ;) (expression_statement "local_44 = *(pointer *)((int)&local_134->sh_offset + 4);" (assignment_expression "local_44 = *(pointer *)((int)&local_134->sh_offset + 4)" identifier = (pointer_expression "*(pointer *)((int)&local_134->sh_offset + 4)" * (cast_expression "(pointer *)((int)&local_134->sh_offset + 4)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_134->sh_offset + 4)" ( (binary_expression "(int)&local_134->sh_offset + 4" (cast_expression "(int)&local_134->sh_offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_offset" & (field_expression "local_134->sh_offset" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_40 = *(pointer *)&local_134->sh_size;" (assignment_expression "local_40 = *(pointer *)&local_134->sh_size" identifier = (pointer_expression "*(pointer *)&local_134->sh_size" * (cast_expression "(pointer *)&local_134->sh_size" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_134->sh_size" & (field_expression "local_134->sh_size" identifier -> field_identifier))))) ;) (expression_statement "local_3c = *(pointer *)((int)&local_134->sh_size + 4);" (assignment_expression "local_3c = *(pointer *)((int)&local_134->sh_size + 4)" identifier = (pointer_expression "*(pointer *)((int)&local_134->sh_size + 4)" * (cast_expression "(pointer *)((int)&local_134->sh_size + 4)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_134->sh_size + 4)" ( (binary_expression "(int)&local_134->sh_size + 4" (cast_expression "(int)&local_134->sh_size" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_size" & (field_expression "local_134->sh_size" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_;" (assignment_expression "local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_" identifier = (parenthesized_expression "(vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;\n                    piVar62[-4] = (int)&this->deferred_layout_" ( (ERROR "vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>\n                                *)local_134->sh_link;\n                    local_34 = (Object_merge_map *)local_134->sh_info;\n                    local_30 = *(undefined4 *)&local_134->sh_addralign;\n                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);\n                    local_28 = *(Symbols_data **)&local_134->sh_entsize;\n                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);\n                    piVar62[-3] = (int)&offset;" (binary_expression "vector<gold" identifier < identifier) : : (type_descriptor "Relocatable_relocs*" type_identifier (abstract_pointer_declarator "*" *)) , identifier : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Relocatable_relocs*>_>\n                                *)local_134->sh_link" (binary_expression "Relocatable_relocs*>_" identifier * (ERROR ">" >) identifier) > (pointer_expression "*)local_134->sh_link" * (ERROR ")" )) (field_expression "local_134->sh_link" identifier -> field_identifier))) ; (assignment_expression "local_34 = (Object_merge_map *)local_134->sh_info" identifier = (cast_expression "(Object_merge_map *)local_134->sh_info" ( (type_descriptor "Object_merge_map *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_134->sh_info" identifier -> field_identifier))) ; (assignment_expression "local_30 = *(undefined4 *)&local_134->sh_addralign" identifier = (pointer_expression "*(undefined4 *)&local_134->sh_addralign" * (cast_expression "(undefined4 *)&local_134->sh_addralign" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_134->sh_addralign" & (field_expression "local_134->sh_addralign" identifier -> field_identifier))))) ; (assignment_expression "local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4)" identifier = (pointer_expression "*(Read_relocs_data **)((int)&local_134->sh_addralign + 4)" * (cast_expression "(Read_relocs_data **)((int)&local_134->sh_addralign + 4)" ( (type_descriptor "Read_relocs_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134->sh_addralign + 4)" ( (binary_expression "(int)&local_134->sh_addralign + 4" (cast_expression "(int)&local_134->sh_addralign" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_addralign" & (field_expression "local_134->sh_addralign" identifier -> field_identifier))) + number_literal) ))))) ; (assignment_expression "local_28 = *(Symbols_data **)&local_134->sh_entsize" identifier = (pointer_expression "*(Symbols_data **)&local_134->sh_entsize" * (cast_expression "(Symbols_data **)&local_134->sh_entsize" ( (type_descriptor "Symbols_data **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_134->sh_entsize" & (field_expression "local_134->sh_entsize" identifier -> field_identifier))))) ; (assignment_expression "local_24 = *(uint **)((int)&local_134->sh_entsize + 4)" identifier = (pointer_expression "*(uint **)((int)&local_134->sh_entsize + 4)" * (cast_expression "(uint **)((int)&local_134->sh_entsize + 4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134->sh_entsize + 4)" ( (binary_expression "(int)&local_134->sh_entsize + 4" (cast_expression "(int)&local_134->sh_entsize" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134->sh_entsize" & (field_expression "local_134->sh_entsize" identifier -> field_identifier))) + number_literal) ))))) ; (assignment_expression "piVar62[-3] = (int)&offset" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)&offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&offset" & identifier))) ;) (assignment_expression "piVar62[-4] = (int)&this->deferred_layout_" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&this->deferred_layout_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&this->deferred_layout_" & (field_expression "this->deferred_layout_" identifier -> field_identifier)))) ))) ;) (expression_statement "local_5c = local_124;" (assignment_expression "local_5c = local_124" identifier = identifier) ;) comment (expression_statement "piVar62[-5] = 0xa3f32;" (assignment_expression "piVar62[-5] = 0xa3f32" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "std::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);" statement_identifier (ERROR "::\n                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                    ::emplace_back<gold" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>_>\n                    ::emplace_back<gold" (binary_expression "_false>::Deferred_layout>_>\n                    ::emplace_back" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) > (ERROR "::" : :) identifier) < identifier)) :) : (expression_statement "Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);" (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3])" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::Deferred_layout>\n                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3])" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > (parenthesized_expression "((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3])" ( (parenthesized_expression "(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3])" ( (ERROR "vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::" (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout,_std" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false>::Deferred_layout,_std" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (comma_expression "Sized_relobj_file<64,_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false>::Deferred_layout>_>\n                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]" (binary_expression "_false>::Deferred_layout>_>\n                                *)piVar62[-4]" (binary_expression "_false>::Deferred_layout>_" (binary_expression "_false>::Deferred_layout" identifier > (ERROR "::" : :) identifier) > identifier) > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (cast_expression "(Deferred_layout *)piVar62[-3]" ( (type_descriptor "Deferred_layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])))) )) )))) ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_22" ( (binary_expression "Shdr_data<64> *)extraout_ECX_22" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_22" * (ERROR ")" )) identifier)) ))) ;) (if_statement "if ((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2;" if (parenthesized_expression "((Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2" ( (assignment_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i] = (Output_section *)0x2" (subscript_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start[i]" (field_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl._M_start" (field_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>\n                    ._M_impl" (binary_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_" (binary_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std::allocator<gold" (binary_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold::Output_section*,_std" (binary_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base<gold" (field_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n                    super__Vector_base" (field_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>).super_Relobj" (call_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }\n                    (this->super_Sized_relobj<64,_false>)" (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }" ( (ERROR "Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (comma_expression "Sized_relobj_file<64,_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset !=\n                        (Sized_relobj_file<64,_false> *)&stack0xffffff84)" (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier)) != (parenthesized_expression "(Sized_relobj_file<64,_false> *)&stack0xffffff84)" ( (comma_expression "Sized_relobj_file<64,_false> *)&stack0xffffff84" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)&stack0xffffff84" identifier > (pointer_expression "*)&stack0xffffff84" * (ERROR ")" )) (pointer_expression "&stack0xffffff84" & identifier)))) ))))) (compound_statement "{\n                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;\n                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;\n                      piVar62[-5] = 0xa3f4e;\n                      operator_delete((void *)piVar62[-4]);\n                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;\n                    }" { (expression_statement "local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;" (assignment_expression "local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_" identifier = (binary_expression "(Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_" (parenthesized_expression "(Sized_relobj_file<64,_false> *)" ( (comma_expression "Sized_relobj_file<64,_false> *" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) & identifier)) ;) (expression_statement "piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;" (assignment_expression "piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)(Sized_relobj_file<64,_false> *)offset" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(Sized_relobj_file<64,_false> *)offset" ( (comma_expression "Sized_relobj_file<64,_false> *)offset" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)offset" identifier > (pointer_expression "*)offset" * (ERROR ")" )) identifier))) )))) ;) (expression_statement "piVar62[-5] = 0xa3f4e;" (assignment_expression "piVar62[-5] = 0xa3f4e" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "operator_delete((void *)piVar62[-4]);" (call_expression "operator_delete((void *)piVar62[-4])" identifier (argument_list "((void *)piVar62[-4])" ( (cast_expression "(void *)piVar62[-4]" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) ))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_23" ( (binary_expression "Shdr_data<64> *)extraout_ECX_23" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_23" * (ERROR ")" )) identifier)) ))) ;) }) )) (argument_list "(this->super_Sized_relobj<64,_false>)" ( (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier (ERROR ">" >) ))) . field_identifier) . field_identifier) . field_identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_section" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) [ identifier ]) = (cast_expression "(Output_section *)0x2" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (expression_statement ";" ;)) (ERROR "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std::" (comma_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int,_std" (assignment_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                              super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start;" (field_expression "allocator<long_long_unsigned_int>_>\n                              ._M_impl._M_start" (field_expression "allocator<long_long_unsigned_int>_>\n                              ._M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + i) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar18 + i) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar18 + i)" * (cast_expression "(undefined4 *)(puVar18 + i)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + i)" ( (binary_expression "puVar18 + i" identifier + identifier) )))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;" (assignment_expression "*(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff" (pointer_expression "*(undefined4 *)((int)puVar18 + i * 8 + 4)" * (cast_expression "(undefined4 *)((int)puVar18 + i * 8 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar18 + i * 8 + 4)" ( (binary_expression "(int)puVar18 + i * 8 + 4" (binary_expression "(int)puVar18 + i * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "i * 8" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar57 = (undefined **)local_124;" (assignment_expression "ppuVar57 = (undefined **)local_124" identifier = (cast_expression "(undefined **)local_124" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) }))) }) (ERROR "}\n            }\n            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_finish ==\n                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n                     _M_impl._M_end_of_storage" } } else if ( identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier == identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier) )) (ERROR "{\n              piVar62" { identifier) [ number_literal ])) = (cast_expression "(int)&i" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&i" & identifier)))) (ERROR ";\n              piVar62" ; identifier) [ number_literal ]) = (binary_expression "(int)reloc_sections.\n                                 super__Vector_base<unsigned_int" (cast_expression "(int)reloc_sections.\n                                 super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "reloc_sections.\n                                 super__Vector_base" identifier . field_identifier)) < identifier)) , identifier) (ERROR "::allocator<unsigned_int>_>.\n                                 _M_impl._M_finish;\n              piVar62[-4] = (int" : : identifier < identifier > identifier > . identifier . identifier ; identifier [ number_literal ] = ( primitive_type) )) & identifier)))) (ERROR ";\n              piVar62[-5] = 0xa3e57;\n              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::\n              _M_realloc_insert<unsigned_int_const&>\n                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *" ; identifier [ number_literal ] = number_literal ; identifier : : identifier < identifier , identifier : : identifier < identifier > identifier > : : identifier < identifier & > ( ( identifier < identifier , identifier : : identifier < identifier > identifier > *) )) (ERROR "piVar62" identifier) [ number_literal ]) , (comma_expression "(uint *)piVar62[-3],(uint *)piVar62[-2]" (cast_expression "(uint *)piVar62[-3]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (cast_expression "(uint *)piVar62[-2]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])))) )) (expression_statement ";" ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_21;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_21" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_21" ( (binary_expression "Shdr_data<64> *)extraout_ECX_21" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_21" * (ERROR ")" )) identifier)) ))) ;) }) (ERROR "else {\n              *reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n               _M_impl._M_finish = i;\n              reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n              ._M_finish = reloc_sections.\n                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n                           _M_finish + 1;\n            }\n          }\n          else {\n            piVar62[-1] = (int)symtab;\n            piVar62[-2] = i;\n            piVar62[-3] = (int)pbVar70;\n            piVar62[-4] = (int)this;\n            piVar62[-5] = 0xa2406;\n            bVar29 = Object::handle_gnu_warning_section\n                               ((Object *)piVar62[-4],(char *)piVar62[-3],piVar62[-2],\n                                (Symbol_table *)piVar62[-1]);\n            bVar75 = !bVar29;\n            if (bVar29) {\n              bVar75 = false;\n              bVar29 = bVar4 == false;\n              if (bVar29) {\n                if (parameters->options_ == (General_options *)0x0) {\n                  piVar62[-1] = 0;\n                  piVar62[-2] = (int)"options";\n                  piVar62[-3] = 0x5c;\n                  piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */\n                  piVar62[-5] = 0xa4433;\n                  do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n                }\n                bVar75 = false;\n                bVar29 = (parameters->options_->shared_).value == false;\n                if (bVar29) {\n                  puVar19 = omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                            super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p +\n                            (i >> 5);\n                  bVar75 = false;\n                  *puVar19 = *puVar19 | 1 << ((byte)i & 0x1f);\n                  bVar29 = *puVar19 == 0;\n                }\n              }\n            }\n            iVar50 = 0x10;\n            pbVar65 = pbVar70;\n            pbVar72 = (byte *)".note.GNU-stack";\n            do {\n              pbVar71 = pbVar72;\n              if (iVar50 == 0) break;\n              iVar50 = iVar50 + -1;\n              pbVar71 = pbVar72 + (uint)bVar77 * -2 + 1;\n              bVar75 = *pbVar65 < *pbVar72;\n              bVar29 = *pbVar65 == *pbVar72;\n              pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n              pbVar72 = pbVar71;\n            }" else { * identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier = identifier ; identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier = identifier . identifier < identifier , identifier : : identifier < identifier > identifier > . identifier . identifier + number_literal ; } } else { identifier [ number_literal ] = ( primitive_type ) identifier ; identifier [ number_literal ] = identifier ; identifier [ number_literal ] = ( primitive_type ) identifier ; identifier [ number_literal ] = ( primitive_type ) identifier ; identifier [ number_literal ] = number_literal ; identifier = identifier : : identifier ( ( identifier * ) identifier [ number_literal ] , ( primitive_type * ) identifier [ number_literal ] , identifier [ number_literal ] , ( identifier * ) identifier [ number_literal ] ) ; identifier = ! identifier ; if ( identifier ) { identifier = false ; identifier = identifier == false ; if ( identifier ) { if ( identifier -> identifier == ( identifier * ) number_literal ) { identifier [ number_literal ] = number_literal ; identifier [ number_literal ] = ( primitive_type ) " identifier " ; identifier [ number_literal ] = number_literal ; identifier [ number_literal ] = ( primitive_type ) " . . / . . / identifier / identifier . identifier " ; comment comment identifier [ number_literal ] = number_literal ; identifier ( ( primitive_type * ) identifier [ number_literal ] , identifier [ number_literal ] , ( primitive_type * ) identifier [ number_literal ] ) ; } identifier = false ; identifier = ( identifier -> identifier -> identifier ) . identifier == false ; if ( identifier ) { identifier = identifier . identifier < identifier : : identifier < primitive_type > identifier > . identifier . identifier . identifier . identifier . identifier + ( identifier >> number_literal ) ; identifier = false ; * identifier = * identifier | number_literal << ( ( identifier ) identifier & number_literal ) ; identifier = * identifier == number_literal ; } } } identifier = number_literal ; identifier = identifier ; identifier = ( identifier * ) " . identifier . identifier - identifier " ; do { identifier = identifier ; if ( identifier == number_literal ) break ; identifier = identifier + number_literal ; identifier = identifier + ( identifier ) identifier * number_literal + number_literal ; identifier = * identifier < * identifier ; identifier = * identifier == * identifier ; identifier = identifier + ( identifier ) identifier * number_literal + number_literal ; identifier = identifier ; }) while (parenthesized_expression "(bVar29)" ( identifier )) ;) (if_statement "if ((!bVar75 && !bVar29) == bVar75) {\n              local_137 = true;\n              local_16c = (uint)(shdr.p_)->sh_flags | local_16c;\n              local_168 = *(uint *)((int)&(shdr.p_)->sh_flags + 4) | local_168;\n              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[i >> 5] | 1 << ((byte)i & 0x1f);\n            }" if (parenthesized_expression "((!bVar75 && !bVar29) == bVar75)" ( (binary_expression "(!bVar75 && !bVar29) == bVar75" (parenthesized_expression "(!bVar75 && !bVar29)" ( (binary_expression "!bVar75 && !bVar29" (unary_expression "!bVar75" ! identifier) && (unary_expression "!bVar29" ! identifier)) )) == identifier) )) (compound_statement "{\n              local_137 = true;\n              local_16c = (uint)(shdr.p_)->sh_flags | local_16c;\n              local_168 = *(uint *)((int)&(shdr.p_)->sh_flags + 4) | local_168;\n              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[i >> 5] | 1 << ((byte)i & 0x1f);\n            }" { (expression_statement "local_137 = true;" (assignment_expression "local_137 = true" identifier = true) ;) (expression_statement "local_16c = (uint)(shdr.p_)->sh_flags | local_16c;" (assignment_expression "local_16c = (uint)(shdr.p_)->sh_flags | local_16c" identifier = (binary_expression "(uint)(shdr.p_)->sh_flags | local_16c" (field_expression "(uint)(shdr.p_)->sh_flags" (call_expression "(uint)(shdr.p_)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(shdr.p_)" ( (field_expression "shdr.p_" identifier . field_identifier) ))) -> field_identifier) | identifier)) ;) (expression_statement "local_168 = *(uint *)((int)&(shdr.p_)->sh_flags + 4) | local_168;" (assignment_expression "local_168 = *(uint *)((int)&(shdr.p_)->sh_flags + 4) | local_168" identifier = (binary_expression "*(uint *)((int)&(shdr.p_)->sh_flags + 4) | local_168" (pointer_expression "*(uint *)((int)&(shdr.p_)->sh_flags + 4)" * (cast_expression "(uint *)((int)&(shdr.p_)->sh_flags + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(shdr.p_)->sh_flags + 4)" ( (binary_expression "(int)&(shdr.p_)->sh_flags + 4" (cast_expression "(int)&(shdr.p_)->sh_flags" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(shdr.p_)->sh_flags" & (field_expression "(shdr.p_)->sh_flags" (parenthesized_expression "(shdr.p_)" ( (field_expression "shdr.p_" identifier . field_identifier) )) -> field_identifier))) + number_literal) )))) | identifier)) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[i >> 5] | 1 << ((byte)i & 0x1f);" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[i >> 5] | 1 << ((byte)i & 0x1f)" (subscript_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[i >> 5]" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                   omit.super__Bvector_base<std" (subscript_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[i >> 5]" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (binary_expression "i >> 5" identifier >> number_literal) ]) = (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (binary_expression "i >> 5" identifier >> number_literal) ]) | (binary_expression "1 << ((byte)i & 0x1f)" number_literal << (parenthesized_expression "((byte)i & 0x1f)" ( (binary_expression "(byte)i & 0x1f" (cast_expression "(byte)i" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) })) (expression_statement "piVar62[-3] = (int)pbVar70;" (assignment_expression "piVar62[-3] = (int)pbVar70" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-4] = (int)this;" (assignment_expression "piVar62[-4] = (int)this" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-5] = 0xa2497;" (assignment_expression "piVar62[-5] = 0xa2497" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (ERROR "bVar29 = Object::" (assignment_expression "bVar29 = Object" identifier = identifier) : :) (expression_statement "handle_split_stack_section((Object *)piVar62[-4],(char *)piVar62[-3]);" (call_expression "handle_split_stack_section((Object *)piVar62[-4],(char *)piVar62[-3])" identifier (argument_list "((Object *)piVar62[-4],(char *)piVar62[-3])" ( (cast_expression "(Object *)piVar62[-4]" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (cast_expression "(char *)piVar62[-3]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) ))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)i;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)i" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)i" ( (binary_expression "Shdr_data<64> *)i" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)i" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "pPVar27 = parameters;" (assignment_expression "pPVar27 = parameters" identifier = identifier) ;) (expression_statement "bVar48 = (byte)i;" (assignment_expression "bVar48 = (byte)i" identifier = (cast_expression "(byte)i" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if ((bVar29) && (bVar4 == false)) {\n              if (parameters->options_ == (General_options *)0x0) {\n                piVar62[-1] = (int)pbVar71;\n                piVar62[-2] = (int)"options";\n                piVar62[-3] = 0x5c;\n                piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                piVar62[-5] = 0xa444f;\n                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n              }\n              if ((parameters->options_->shared_).value == false) {\n                omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5] |\n                     1 << (bVar48 & 0x1f);\n              }\n            }" if (parenthesized_expression "((bVar29) && (bVar4 == false))" ( (binary_expression "(bVar29) && (bVar4 == false)" (parenthesized_expression "(bVar29)" ( identifier )) && (parenthesized_expression "(bVar4 == false)" ( (binary_expression "bVar4 == false" identifier == false) ))) )) (compound_statement "{\n              if (parameters->options_ == (General_options *)0x0) {\n                piVar62[-1] = (int)pbVar71;\n                piVar62[-2] = (int)"options";\n                piVar62[-3] = 0x5c;\n                piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                piVar62[-5] = 0xa444f;\n                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n              }\n              if ((parameters->options_->shared_).value == false) {\n                omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5] |\n                     1 << (bVar48 & 0x1f);\n              }\n            }" { (if_statement "if (parameters->options_ == (General_options *)0x0) {\n                piVar62[-1] = (int)pbVar71;\n                piVar62[-2] = (int)"options";\n                piVar62[-3] = 0x5c;\n                piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                piVar62[-5] = 0xa444f;\n                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n              }" if (parenthesized_expression "(parameters->options_ == (General_options *)0x0)" ( (binary_expression "parameters->options_ == (General_options *)0x0" (field_expression "parameters->options_" identifier -> field_identifier) == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                piVar62[-1] = (int)pbVar71;\n                piVar62[-2] = (int)"options";\n                piVar62[-3] = 0x5c;\n                piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n                piVar62[-5] = 0xa444f;\n                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n              }" { (expression_statement "piVar62[-1] = (int)pbVar71;" (assignment_expression "piVar62[-1] = (int)pbVar71" (subscript_expression "piVar62[-1]" identifier [ number_literal ]) = (cast_expression "(int)pbVar71" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-2] = (int)"options";" (assignment_expression "piVar62[-2] = (int)"options"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"options"" ( (type_descriptor "int" primitive_type) ) (string_literal ""options"" " string_content "))) ;) (expression_statement "piVar62[-3] = 0x5c;" (assignment_expression "piVar62[-3] = 0x5c" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-4] = (int)"../../gold/parameters.h";" (assignment_expression "piVar62[-4] = (int)"../../gold/parameters.h"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/parameters.h"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/parameters.h"" " string_content "))) ;) comment (expression_statement "piVar62[-5] = 0xa444f;" (assignment_expression "piVar62[-5] = 0xa444f" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);" (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) })) (if_statement "if ((parameters->options_->shared_).value == false) {\n                omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5] |\n                     1 << (bVar48 & 0x1f);\n              }" if (parenthesized_expression "((parameters->options_->shared_).value == false)" ( (binary_expression "(parameters->options_->shared_).value == false" (field_expression "(parameters->options_->shared_).value" (parenthesized_expression "(parameters->options_->shared_)" ( (field_expression "parameters->options_->shared_" (field_expression "parameters->options_" identifier -> field_identifier) -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n                omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5] |\n                     1 << (bVar48 & 0x1f);\n              }" { (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5] |\n                     1 << (bVar48 & 0x1f);" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5] |\n                     1 << (bVar48 & 0x1f)" (subscript_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5]" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start.super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data._M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                     super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std::allocator<bool" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5] =\n                     omit.super__Bvector_base<std" (subscript_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p[i >> 5]" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start.super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                _M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (binary_expression "i >> 5" identifier >> number_literal) ]) = (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (binary_expression "i >> 5" identifier >> number_literal) ]) | (binary_expression "1 << (bVar48 & 0x1f)" number_literal << (parenthesized_expression "(bVar48 & 0x1f)" ( (binary_expression "bVar48 & 0x1f" identifier & number_literal) )))) ;) })) })) (if_statement "if (pPVar27->target_ == (Target *)0x0) {\n              piVar62[-2] = (int)"target";\n              piVar62[-3] = 0x69;\n              piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n              piVar62[-5] = 0xa4314;\n              do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n            }" if (parenthesized_expression "(pPVar27->target_ == (Target *)0x0)" ( (binary_expression "pPVar27->target_ == (Target *)0x0" (field_expression "pPVar27->target_" identifier -> field_identifier) == (cast_expression "(Target *)0x0" ( (type_descriptor "Target *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              piVar62[-2] = (int)"target";\n              piVar62[-3] = 0x69;\n              piVar62[-4] = (int)"../../gold/parameters.h";\n                    /* WARNING: Subroutine does not return */\n              piVar62[-5] = 0xa4314;\n              do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);\n            }" { (expression_statement "piVar62[-2] = (int)"target";" (assignment_expression "piVar62[-2] = (int)"target"" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)"target"" ( (type_descriptor "int" primitive_type) ) (string_literal ""target"" " string_content "))) ;) (expression_statement "piVar62[-3] = 0x69;" (assignment_expression "piVar62[-3] = 0x69" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "piVar62[-4] = (int)"../../gold/parameters.h";" (assignment_expression "piVar62[-4] = (int)"../../gold/parameters.h"" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)"../../gold/parameters.h"" ( (type_descriptor "int" primitive_type) ) (string_literal ""../../gold/parameters.h"" " string_content "))) ;) comment (expression_statement "piVar62[-5] = 0xa4314;" (assignment_expression "piVar62[-5] = 0xa4314" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);" (call_expression "do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" identifier (argument_list "((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (subscript_expression "piVar62[-3]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-2]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-2]" identifier [ number_literal ])) ))) ;) })) (expression_statement "iVar50 = *(int *)(*(int *)(pPVar27->target_ + 4) + 0x50);" (assignment_expression "iVar50 = *(int *)(*(int *)(pPVar27->target_ + 4) + 0x50)" identifier = (pointer_expression "*(int *)(*(int *)(pPVar27->target_ + 4) + 0x50)" * (cast_expression "(int *)(*(int *)(pPVar27->target_ + 4) + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pPVar27->target_ + 4) + 0x50)" ( (binary_expression "*(int *)(pPVar27->target_ + 4) + 0x50" (pointer_expression "*(int *)(pPVar27->target_ + 4)" * (cast_expression "(int *)(pPVar27->target_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pPVar27->target_ + 4)" ( (binary_expression "pPVar27->target_ + 4" (field_expression "pPVar27->target_" identifier -> field_identifier) + number_literal) )))) + number_literal) ))))) ;) (expression_statement "bVar29 = iVar50 == 0;" (assignment_expression "bVar29 = iVar50 == 0" identifier = (binary_expression "iVar50 == 0" identifier == number_literal)) ;) (expression_statement "uVar23 = (uint3)(i >> 8);" (assignment_expression "uVar23 = (uint3)(i >> 8)" identifier = (call_expression "(uint3)(i >> 8)" (parenthesized_expression "(uint3)" ( identifier )) (argument_list "(i >> 8)" ( (binary_expression "i >> 8" identifier >> number_literal) )))) ;) if (parenthesized_expression "(bVar29)" ( identifier )) (compound_statement "{\nLAB_000a2b98:\n              bVar75 = false;\n              iVar50 = 0x10;\n              pbVar65 = pbVar70;\n              pbVar72 = (byte *)".gnu.attributes";\n              do {\n                if (iVar50 == 0) break;\n                iVar50 = iVar50 + -1;\n                bVar75 = *pbVar65 < *pbVar72;\n                bVar29 = *pbVar65 == *pbVar72;\n                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n              } while (bVar29);\n              if ((!bVar75 && !bVar29) == bVar75) goto LAB_000a24fe;\n              if (local_124 != (Sized_relobj_file<64,_false> *)0x7) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar75 = local_124 == (Sized_relobj_file<64,_false> *)0x7;\n              bVar29 = local_124 < (Sized_relobj_file<64,_false> *)0x7;\n              iVar50 = 0x13;\n              pbVar65 = pbVar70;\n              pbVar72 = (byte *)".note.gnu.property";\n              do {\n                if (iVar50 == 0) break;\n                iVar50 = iVar50 + -1;\n                bVar29 = *pbVar65 < *pbVar72;\n                bVar75 = *pbVar65 == *pbVar72;\n                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n              } while (bVar75);\n              if ((!bVar29 && !bVar75) != bVar29) {\n                bVar29 = (1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                         [(uint)SVar49.p_ >> 5]) != 0;\n                ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);\n                if (bVar29) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar29 = false;\n                bVar75 = ((shdr.p_)->sh_flags & 0x200) == 0;\n                pSVar51 = (Sized_relobj_file<64,_false> *)SVar49.p_;\n                if (bVar75) {\n                  pSVar51 = (Sized_relobj_file<64,_false> *)0xd;\n                  pbVar65 = pbVar70;\n                  pbVar72 = (byte *)".gnu.linkonce";\n                  do {\n                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;\n                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);\n                    bVar29 = *pbVar65 < *pbVar72;\n                    bVar75 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar75);\n                  if ((!bVar29 && !bVar75) == bVar29) {\n                    piVar62[-4] = (int)&shdr;\n                    piVar62[-5] = (int)pbVar70;\n                    piVar62[-6] = (int)SVar49.p_;\n                    piVar62[-7] = (int)layout;\n                    piVar62[-8] = (int)this;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    piVar62[-9] = 0xa352c;\n                    bVar29 = include_linkonce_section\n                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4]);\n                    pSVar51 = extraout_ECX_11;\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;\n                    uVar69 = i;\n                    if (!bVar29) goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                pIVar64 = layout->incremental_inputs_;\n                SVar49.p_ = (Shdr_data<64> *)pSVar51;\n                if ((pIVar64 == (Incremental_inputs *)0x0) || ((char)ppuVar57 != '\0'))\n                goto LAB_000a22b0;\nLAB_000a259c:\n                piVar62[-4] = (int)local_124;\n                piVar62[-5] = 0xa25b0;\n                bVar29 = can_incremental_update(piVar62[-4]);\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_00;\n                ppuVar57 = local_120;\n                if (bVar29) {\n                  local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4);\n                  local_154 = (undefined4)(shdr.p_)->sh_size;\n                  pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                            compressed_sections_;\n                  if (pCVar10 != (Compressed_section_map *)0x0) {\n                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;\n                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;\n                    p_Var52 = &p_Var1->_M_header;\n                    if (p_Var73 != (_Base_ptr)0x0) {\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }\n                  }\n                  piVar62[-3] = local_150;\n                  piVar62[-4] = local_154;\n                  piVar62[-5] = (int)pbVar70;\n                  piVar62[-6] = i;\n                  piVar62[-7] = (int)this;\n                  piVar62[-8] = (int)pIVar64;\n                  piVar62[-9] = 0xa263f;\n                  Incremental_inputs::report_input_section\n                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01;\n                }\n                goto LAB_000a22b0;\n              }\n              piVar62[-2] = (int)SVar49.p_;\n              piVar62[-3] = (int)layout;\n              piVar62[-4] = (int)this;\n                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */\n              piVar62[-5] = 0xa326f;\n              layout_gnu_property_section\n                        ((Sized_relobj_file<64,_false> *)piVar62[-4],(Layout *)piVar62[-3],\n                         piVar62[-2]);\n              ppuVar57 = (undefined **)(i >> 5);\n              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] | 1 << ((byte)i & 0x1f);\n              SVar49.p_ = (Shdr_data<64> *)i;\n              uVar69 = i;\n            }" { (labeled_statement "LAB_000a2b98:\n              bVar75 = false;" statement_identifier : (expression_statement "bVar75 = false;" (assignment_expression "bVar75 = false" identifier = false) ;)) (expression_statement "iVar50 = 0x10;" (assignment_expression "iVar50 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar65 = pbVar70;" (assignment_expression "pbVar65 = pbVar70" identifier = identifier) ;) (expression_statement "pbVar72 = (byte *)".gnu.attributes";" (assignment_expression "pbVar72 = (byte *)".gnu.attributes"" identifier = (cast_expression "(byte *)".gnu.attributes"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu.attributes"" " string_content "))) ;) (do_statement "do {\n                if (iVar50 == 0) break;\n                iVar50 = iVar50 + -1;\n                bVar75 = *pbVar65 < *pbVar72;\n                bVar29 = *pbVar65 == *pbVar72;\n                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n              } while (bVar29);" do (compound_statement "{\n                if (iVar50 == 0) break;\n                iVar50 = iVar50 + -1;\n                bVar75 = *pbVar65 < *pbVar72;\n                bVar29 = *pbVar65 == *pbVar72;\n                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n              }" { (if_statement "if (iVar50 == 0) break;" if (parenthesized_expression "(iVar50 == 0)" ( (binary_expression "iVar50 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar50 = iVar50 + -1;" (assignment_expression "iVar50 = iVar50 + -1" identifier = (binary_expression "iVar50 + -1" identifier + number_literal)) ;) (expression_statement "bVar75 = *pbVar65 < *pbVar72;" (assignment_expression "bVar75 = *pbVar65 < *pbVar72" identifier = (binary_expression "*pbVar65 < *pbVar72" (pointer_expression "*pbVar65" * identifier) < (pointer_expression "*pbVar72" * identifier))) ;) (expression_statement "bVar29 = *pbVar65 == *pbVar72;" (assignment_expression "bVar29 = *pbVar65 == *pbVar72" identifier = (binary_expression "*pbVar65 == *pbVar72" (pointer_expression "*pbVar65" * identifier) == (pointer_expression "*pbVar72" * identifier))) ;) (expression_statement "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;" (assignment_expression "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar65 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar65 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;" (assignment_expression "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar72 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar72 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar29)" ( identifier )) ;) (if_statement "if ((!bVar75 && !bVar29) == bVar75) goto LAB_000a24fe;" if (parenthesized_expression "((!bVar75 && !bVar29) == bVar75)" ( (binary_expression "(!bVar75 && !bVar29) == bVar75" (parenthesized_expression "(!bVar75 && !bVar29)" ( (binary_expression "!bVar75 && !bVar29" (unary_expression "!bVar75" ! identifier) && (unary_expression "!bVar29" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_000a24fe;" goto statement_identifier ;)) (if_statement "if (local_124 != (Sized_relobj_file<64,_false> *)0x7) goto LAB_000a2522;" if (parenthesized_expression "(local_124 != (Sized_relobj_file<64,_false> *)0x7)" ( (binary_expression "local_124 != (Sized_relobj_file<64,_false> *)0x7)" identifier != (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x7)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x7" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x7" identifier > (pointer_expression "*)0x7" * (ERROR ")" )) number_literal))) ))) )) (goto_statement "goto LAB_000a2522;" goto statement_identifier ;)) (labeled_statement "LAB_000a2bcb:\n              bVar75 = local_124 == (Sized_relobj_file<64,_false> *)0x7;" statement_identifier : (expression_statement "bVar75 = local_124 == (Sized_relobj_file<64,_false> *)0x7;" (assignment_expression "bVar75 = local_124 == (Sized_relobj_file<64,_false> *)0x7" identifier = (binary_expression "local_124 == (Sized_relobj_file<64,_false> *)0x7" identifier == (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x7" ( (comma_expression "Sized_relobj_file<64,_false> *)0x7" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x7" identifier > (pointer_expression "*)0x7" * (ERROR ")" )) number_literal))) )))) ;)) (expression_statement "bVar29 = local_124 < (Sized_relobj_file<64,_false> *)0x7;" (assignment_expression "bVar29 = local_124 < (Sized_relobj_file<64,_false> *)0x7" identifier = (binary_expression "local_124 < (Sized_relobj_file<64,_false> *)0x7" identifier < (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x7" ( (comma_expression "Sized_relobj_file<64,_false> *)0x7" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x7" identifier > (pointer_expression "*)0x7" * (ERROR ")" )) number_literal))) )))) ;) (expression_statement "iVar50 = 0x13;" (assignment_expression "iVar50 = 0x13" identifier = number_literal) ;) (expression_statement "pbVar65 = pbVar70;" (assignment_expression "pbVar65 = pbVar70" identifier = identifier) ;) (expression_statement "pbVar72 = (byte *)".note.gnu.property";" (assignment_expression "pbVar72 = (byte *)".note.gnu.property"" identifier = (cast_expression "(byte *)".note.gnu.property"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".note.gnu.property"" " string_content "))) ;) (do_statement "do {\n                if (iVar50 == 0) break;\n                iVar50 = iVar50 + -1;\n                bVar29 = *pbVar65 < *pbVar72;\n                bVar75 = *pbVar65 == *pbVar72;\n                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n              } while (bVar75);" do (compound_statement "{\n                if (iVar50 == 0) break;\n                iVar50 = iVar50 + -1;\n                bVar29 = *pbVar65 < *pbVar72;\n                bVar75 = *pbVar65 == *pbVar72;\n                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n              }" { (if_statement "if (iVar50 == 0) break;" if (parenthesized_expression "(iVar50 == 0)" ( (binary_expression "iVar50 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar50 = iVar50 + -1;" (assignment_expression "iVar50 = iVar50 + -1" identifier = (binary_expression "iVar50 + -1" identifier + number_literal)) ;) (expression_statement "bVar29 = *pbVar65 < *pbVar72;" (assignment_expression "bVar29 = *pbVar65 < *pbVar72" identifier = (binary_expression "*pbVar65 < *pbVar72" (pointer_expression "*pbVar65" * identifier) < (pointer_expression "*pbVar72" * identifier))) ;) (expression_statement "bVar75 = *pbVar65 == *pbVar72;" (assignment_expression "bVar75 = *pbVar65 == *pbVar72" identifier = (binary_expression "*pbVar65 == *pbVar72" (pointer_expression "*pbVar65" * identifier) == (pointer_expression "*pbVar72" * identifier))) ;) (expression_statement "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;" (assignment_expression "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar65 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar65 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;" (assignment_expression "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar72 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar72 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar75)" ( identifier )) ;) (if_statement "if ((!bVar29 && !bVar75) != bVar29) {\n                bVar29 = (1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                         [(uint)SVar49.p_ >> 5]) != 0;\n                ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);\n                if (bVar29) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar29 = false;\n                bVar75 = ((shdr.p_)->sh_flags & 0x200) == 0;\n                pSVar51 = (Sized_relobj_file<64,_false> *)SVar49.p_;\n                if (bVar75) {\n                  pSVar51 = (Sized_relobj_file<64,_false> *)0xd;\n                  pbVar65 = pbVar70;\n                  pbVar72 = (byte *)".gnu.linkonce";\n                  do {\n                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;\n                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);\n                    bVar29 = *pbVar65 < *pbVar72;\n                    bVar75 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar75);\n                  if ((!bVar29 && !bVar75) == bVar29) {\n                    piVar62[-4] = (int)&shdr;\n                    piVar62[-5] = (int)pbVar70;\n                    piVar62[-6] = (int)SVar49.p_;\n                    piVar62[-7] = (int)layout;\n                    piVar62[-8] = (int)this;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    piVar62[-9] = 0xa352c;\n                    bVar29 = include_linkonce_section\n                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4]);\n                    pSVar51 = extraout_ECX_11;\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;\n                    uVar69 = i;\n                    if (!bVar29) goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                pIVar64 = layout->incremental_inputs_;\n                SVar49.p_ = (Shdr_data<64> *)pSVar51;\n                if ((pIVar64 == (Incremental_inputs *)0x0) || ((char)ppuVar57 != '\0'))\n                goto LAB_000a22b0;\nLAB_000a259c:\n                piVar62[-4] = (int)local_124;\n                piVar62[-5] = 0xa25b0;\n                bVar29 = can_incremental_update(piVar62[-4]);\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_00;\n                ppuVar57 = local_120;\n                if (bVar29) {\n                  local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4);\n                  local_154 = (undefined4)(shdr.p_)->sh_size;\n                  pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                            compressed_sections_;\n                  if (pCVar10 != (Compressed_section_map *)0x0) {\n                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;\n                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;\n                    p_Var52 = &p_Var1->_M_header;\n                    if (p_Var73 != (_Base_ptr)0x0) {\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }\n                  }\n                  piVar62[-3] = local_150;\n                  piVar62[-4] = local_154;\n                  piVar62[-5] = (int)pbVar70;\n                  piVar62[-6] = i;\n                  piVar62[-7] = (int)this;\n                  piVar62[-8] = (int)pIVar64;\n                  piVar62[-9] = 0xa263f;\n                  Incremental_inputs::report_input_section\n                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01;\n                }\n                goto LAB_000a22b0;\n              }" if (parenthesized_expression "((!bVar29 && !bVar75) != bVar29)" ( (binary_expression "(!bVar29 && !bVar75) != bVar29" (parenthesized_expression "(!bVar29 && !bVar75)" ( (binary_expression "!bVar29 && !bVar75" (unary_expression "!bVar29" ! identifier) && (unary_expression "!bVar75" ! identifier)) )) != identifier) )) (compound_statement "{\n                bVar29 = (1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                         [(uint)SVar49.p_ >> 5]) != 0;\n                ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);\n                if (bVar29) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar29 = false;\n                bVar75 = ((shdr.p_)->sh_flags & 0x200) == 0;\n                pSVar51 = (Sized_relobj_file<64,_false> *)SVar49.p_;\n                if (bVar75) {\n                  pSVar51 = (Sized_relobj_file<64,_false> *)0xd;\n                  pbVar65 = pbVar70;\n                  pbVar72 = (byte *)".gnu.linkonce";\n                  do {\n                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;\n                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);\n                    bVar29 = *pbVar65 < *pbVar72;\n                    bVar75 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar75);\n                  if ((!bVar29 && !bVar75) == bVar29) {\n                    piVar62[-4] = (int)&shdr;\n                    piVar62[-5] = (int)pbVar70;\n                    piVar62[-6] = (int)SVar49.p_;\n                    piVar62[-7] = (int)layout;\n                    piVar62[-8] = (int)this;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    piVar62[-9] = 0xa352c;\n                    bVar29 = include_linkonce_section\n                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4]);\n                    pSVar51 = extraout_ECX_11;\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;\n                    uVar69 = i;\n                    if (!bVar29) goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                pIVar64 = layout->incremental_inputs_;\n                SVar49.p_ = (Shdr_data<64> *)pSVar51;\n                if ((pIVar64 == (Incremental_inputs *)0x0) || ((char)ppuVar57 != '\0'))\n                goto LAB_000a22b0;\nLAB_000a259c:\n                piVar62[-4] = (int)local_124;\n                piVar62[-5] = 0xa25b0;\n                bVar29 = can_incremental_update(piVar62[-4]);\n                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_00;\n                ppuVar57 = local_120;\n                if (bVar29) {\n                  local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4);\n                  local_154 = (undefined4)(shdr.p_)->sh_size;\n                  pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                            compressed_sections_;\n                  if (pCVar10 != (Compressed_section_map *)0x0) {\n                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;\n                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;\n                    p_Var52 = &p_Var1->_M_header;\n                    if (p_Var73 != (_Base_ptr)0x0) {\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }\n                  }\n                  piVar62[-3] = local_150;\n                  piVar62[-4] = local_154;\n                  piVar62[-5] = (int)pbVar70;\n                  piVar62[-6] = i;\n                  piVar62[-7] = (int)this;\n                  piVar62[-8] = (int)pIVar64;\n                  piVar62[-9] = 0xa263f;\n                  Incremental_inputs::report_input_section\n                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01;\n                }\n                goto LAB_000a22b0;\n              }" { (expression_statement "bVar29 = (1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                         [(uint)SVar49.p_ >> 5]) != 0;" (assignment_expression "bVar29 = (1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                         [(uint)SVar49.p_ >> 5]) != 0" identifier = (binary_expression "(1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                         [(uint)SVar49.p_ >> 5]) != 0" (parenthesized_expression "(1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                         [(uint)SVar49.p_ >> 5])" ( (subscript_expression "1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                         [(uint)SVar49.p_ >> 5]" (field_expression "1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p" (field_expression "1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start.super__Bit_iterator_base" (field_expression "1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data._M_start" (field_expression "1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                         super__Bvector_impl_data" (field_expression "1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std::allocator<bool" (binary_expression "1 << (bVar48 & 0x1f) &\n                         omit.super__Bvector_base<std" (binary_expression "1 << (bVar48 & 0x1f)" number_literal << (parenthesized_expression "(bVar48 & 0x1f)" ( (binary_expression "bVar48 & 0x1f" identifier & number_literal) ))) & (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (binary_expression "(uint)SVar49.p_ >> 5" (cast_expression "(uint)SVar49.p_" ( (type_descriptor "uint" type_identifier) ) (field_expression "SVar49.p_" identifier . field_identifier)) >> number_literal) ]) )) != number_literal)) ;) (expression_statement "ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);" (assignment_expression "ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29)" identifier = (cast_expression "(undefined **)CONCAT31(uVar23 >> 5,bVar29)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(uVar23 >> 5,bVar29)" identifier (argument_list "(uVar23 >> 5,bVar29)" ( (binary_expression "uVar23 >> 5" identifier >> number_literal) , identifier ))))) ;) (if_statement "if (bVar29) goto LAB_000a2c18;" if (parenthesized_expression "(bVar29)" ( identifier )) (goto_statement "goto LAB_000a2c18;" goto statement_identifier ;)) (labeled_statement "LAB_000a2551:\n                bVar29 = false;" statement_identifier : (expression_statement "bVar29 = false;" (assignment_expression "bVar29 = false" identifier = false) ;)) (expression_statement "bVar75 = ((shdr.p_)->sh_flags & 0x200) == 0;" (assignment_expression "bVar75 = ((shdr.p_)->sh_flags & 0x200) == 0" identifier = (binary_expression "((shdr.p_)->sh_flags & 0x200) == 0" (parenthesized_expression "((shdr.p_)->sh_flags & 0x200)" ( (binary_expression "(shdr.p_)->sh_flags & 0x200" (field_expression "(shdr.p_)->sh_flags" (parenthesized_expression "(shdr.p_)" ( (field_expression "shdr.p_" identifier . field_identifier) )) -> field_identifier) & number_literal) )) == number_literal)) ;) (expression_statement "pSVar51 = (Sized_relobj_file<64,_false> *)SVar49.p_;" (assignment_expression "pSVar51 = (Sized_relobj_file<64,_false> *)SVar49.p_" identifier = (parenthesized_expression "(Sized_relobj_file<64,_false> *)SVar49.p_" ( (comma_expression "Sized_relobj_file<64,_false> *)SVar49.p_" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)SVar49.p_" identifier > (pointer_expression "*)SVar49.p_" * (ERROR ")" )) (field_expression "SVar49.p_" identifier . field_identifier)))) ))) ;) (if_statement "if (bVar75) {\n                  pSVar51 = (Sized_relobj_file<64,_false> *)0xd;\n                  pbVar65 = pbVar70;\n                  pbVar72 = (byte *)".gnu.linkonce";\n                  do {\n                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;\n                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);\n                    bVar29 = *pbVar65 < *pbVar72;\n                    bVar75 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar75);\n                  if ((!bVar29 && !bVar75) == bVar29) {\n                    piVar62[-4] = (int)&shdr;\n                    piVar62[-5] = (int)pbVar70;\n                    piVar62[-6] = (int)SVar49.p_;\n                    piVar62[-7] = (int)layout;\n                    piVar62[-8] = (int)this;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    piVar62[-9] = 0xa352c;\n                    bVar29 = include_linkonce_section\n                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4]);\n                    pSVar51 = extraout_ECX_11;\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;\n                    uVar69 = i;\n                    if (!bVar29) goto LAB_000a2c3a;\n                  }\n                }" if (parenthesized_expression "(bVar75)" ( identifier )) (compound_statement "{\n                  pSVar51 = (Sized_relobj_file<64,_false> *)0xd;\n                  pbVar65 = pbVar70;\n                  pbVar72 = (byte *)".gnu.linkonce";\n                  do {\n                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;\n                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);\n                    bVar29 = *pbVar65 < *pbVar72;\n                    bVar75 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar75);\n                  if ((!bVar29 && !bVar75) == bVar29) {\n                    piVar62[-4] = (int)&shdr;\n                    piVar62[-5] = (int)pbVar70;\n                    piVar62[-6] = (int)SVar49.p_;\n                    piVar62[-7] = (int)layout;\n                    piVar62[-8] = (int)this;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    piVar62[-9] = 0xa352c;\n                    bVar29 = include_linkonce_section\n                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4]);\n                    pSVar51 = extraout_ECX_11;\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;\n                    uVar69 = i;\n                    if (!bVar29) goto LAB_000a2c3a;\n                  }\n                }" { (expression_statement "pSVar51 = (Sized_relobj_file<64,_false> *)0xd;" (assignment_expression "pSVar51 = (Sized_relobj_file<64,_false> *)0xd" identifier = (parenthesized_expression "(Sized_relobj_file<64,_false> *)0xd" ( (comma_expression "Sized_relobj_file<64,_false> *)0xd" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0xd" identifier > (pointer_expression "*)0xd" * (ERROR ")" )) number_literal))) ))) ;) (expression_statement "pbVar65 = pbVar70;" (assignment_expression "pbVar65 = pbVar70" identifier = identifier) ;) (expression_statement "pbVar72 = (byte *)".gnu.linkonce";" (assignment_expression "pbVar72 = (byte *)".gnu.linkonce"" identifier = (cast_expression "(byte *)".gnu.linkonce"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu.linkonce"" " string_content "))) ;) (do_statement "do {\n                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;\n                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);\n                    bVar29 = *pbVar65 < *pbVar72;\n                    bVar75 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  } while (bVar75);" do (compound_statement "{\n                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;\n                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);\n                    bVar29 = *pbVar65 < *pbVar72;\n                    bVar75 = *pbVar65 == *pbVar72;\n                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;\n                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;\n                  }" { (if_statement "if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;" if (parenthesized_expression "(pSVar51 == (Sized_relobj_file<64,_false> *)0x0)" ( (binary_expression "pSVar51 == (Sized_relobj_file<64,_false> *)0x0)" identifier == (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x0)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x0" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (break_statement "break;" break ;)) (expression_statement "pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);" (assignment_expression "pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3)" identifier = (call_expression "(Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3)" (parenthesized_expression "(Sized_relobj_file<64,_false> *)" ( (comma_expression "Sized_relobj_file<64,_false> *" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "((int)&pSVar51[-1].output_views_ + 3)" ( (binary_expression "(int)&pSVar51[-1].output_views_ + 3" (cast_expression "(int)&pSVar51[-1].output_views_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pSVar51[-1].output_views_" & (field_expression "pSVar51[-1].output_views_" (subscript_expression "pSVar51[-1]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) ;) (expression_statement "bVar29 = *pbVar65 < *pbVar72;" (assignment_expression "bVar29 = *pbVar65 < *pbVar72" identifier = (binary_expression "*pbVar65 < *pbVar72" (pointer_expression "*pbVar65" * identifier) < (pointer_expression "*pbVar72" * identifier))) ;) (expression_statement "bVar75 = *pbVar65 == *pbVar72;" (assignment_expression "bVar75 = *pbVar65 == *pbVar72" identifier = (binary_expression "*pbVar65 == *pbVar72" (pointer_expression "*pbVar65" * identifier) == (pointer_expression "*pbVar72" * identifier))) ;) (expression_statement "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;" (assignment_expression "pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar65 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar65 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;" (assignment_expression "pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1" identifier = (binary_expression "pbVar72 + (uint)bVar77 * -2 + 1" (binary_expression "pbVar72 + (uint)bVar77 * -2" identifier + (binary_expression "(uint)bVar77 * -2" (cast_expression "(uint)bVar77" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar75)" ( identifier )) ;) (if_statement "if ((!bVar29 && !bVar75) == bVar29) {\n                    piVar62[-4] = (int)&shdr;\n                    piVar62[-5] = (int)pbVar70;\n                    piVar62[-6] = (int)SVar49.p_;\n                    piVar62[-7] = (int)layout;\n                    piVar62[-8] = (int)this;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    piVar62[-9] = 0xa352c;\n                    bVar29 = include_linkonce_section\n                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4]);\n                    pSVar51 = extraout_ECX_11;\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;\n                    uVar69 = i;\n                    if (!bVar29) goto LAB_000a2c3a;\n                  }" if (parenthesized_expression "((!bVar29 && !bVar75) == bVar29)" ( (binary_expression "(!bVar29 && !bVar75) == bVar29" (parenthesized_expression "(!bVar29 && !bVar75)" ( (binary_expression "!bVar29 && !bVar75" (unary_expression "!bVar29" ! identifier) && (unary_expression "!bVar75" ! identifier)) )) == identifier) )) (compound_statement "{\n                    piVar62[-4] = (int)&shdr;\n                    piVar62[-5] = (int)pbVar70;\n                    piVar62[-6] = (int)SVar49.p_;\n                    piVar62[-7] = (int)layout;\n                    piVar62[-8] = (int)this;\n                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */\n                    piVar62[-9] = 0xa352c;\n                    bVar29 = include_linkonce_section\n                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4]);\n                    pSVar51 = extraout_ECX_11;\n                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;\n                    uVar69 = i;\n                    if (!bVar29) goto LAB_000a2c3a;\n                  }" { (expression_statement "piVar62[-4] = (int)&shdr;" (assignment_expression "piVar62[-4] = (int)&shdr" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&shdr" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&shdr" & identifier))) ;) (expression_statement "piVar62[-5] = (int)pbVar70;" (assignment_expression "piVar62[-5] = (int)pbVar70" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-6] = (int)SVar49.p_;" (assignment_expression "piVar62[-6] = (int)SVar49.p_" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) = (cast_expression "(int)SVar49.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "SVar49.p_" identifier . field_identifier))) ;) (expression_statement "piVar62[-7] = (int)layout;" (assignment_expression "piVar62[-7] = (int)layout" (subscript_expression "piVar62[-7]" identifier [ number_literal ]) = (cast_expression "(int)layout" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-8] = (int)this;" (assignment_expression "piVar62[-8] = (int)this" (subscript_expression "piVar62[-8]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) comment (expression_statement "piVar62[-9] = 0xa352c;" (assignment_expression "piVar62[-9] = 0xa352c" (subscript_expression "piVar62[-9]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "bVar29 = include_linkonce_section\n                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4]);" (assignment_expression "bVar29 = include_linkonce_section" identifier = identifier) (ERROR "((Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4])" ( ( (comma_expression "Sized_relobj_file<64,_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4])" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false> *)piVar62[-8],\n                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4])" (binary_expression "_false> *)piVar62[-8]" identifier > (pointer_expression "*)piVar62[-8]" * (ERROR ")" )) (subscript_expression "piVar62[-8]" identifier [ number_literal ]))) , (comma_expression "(Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4])" (cast_expression "(Layout *)piVar62[-7]" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-7]" identifier [ number_literal ])) , (comma_expression "piVar62[-6],(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4])" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) , (comma_expression "(char *)piVar62[-5],\n                                        (Shdr<64,_false> *)piVar62[-4])" (cast_expression "(char *)piVar62[-5]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-5]" identifier [ number_literal ])) , (parenthesized_expression "(Shdr<64,_false> *)piVar62[-4])" ( (comma_expression "Shdr<64,_false> *)piVar62[-4]" (binary_expression "Shdr<64" identifier < number_literal) , (binary_expression "_false> *)piVar62[-4]" identifier > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ])))) )))))))) ;) (expression_statement "pSVar51 = extraout_ECX_11;" (assignment_expression "pSVar51 = extraout_ECX_11" identifier = identifier) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_11" ( (binary_expression "Shdr_data<64> *)extraout_ECX_11" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_11" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "uVar69 = i;" (assignment_expression "uVar69 = i" identifier = identifier) ;) (if_statement "if (!bVar29) goto LAB_000a2c3a;" if (parenthesized_expression "(!bVar29)" ( (unary_expression "!bVar29" ! identifier) )) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;)) })) })) (labeled_statement "LAB_000a2583:\n                pIVar64 = layout->incremental_inputs_;" statement_identifier : (expression_statement "pIVar64 = layout->incremental_inputs_;" (assignment_expression "pIVar64 = layout->incremental_inputs_" identifier = (field_expression "layout->incremental_inputs_" identifier -> field_identifier)) ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)pSVar51;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)pSVar51" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)pSVar51" ( (binary_expression "Shdr_data<64> *)pSVar51" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)pSVar51" * (ERROR ")" )) identifier)) ))) ;) (if_statement "if ((pIVar64 == (Incremental_inputs *)0x0) || ((char)ppuVar57 != '\0'))\n                goto LAB_000a22b0;" if (parenthesized_expression "((pIVar64 == (Incremental_inputs *)0x0) || ((char)ppuVar57 != '\0'))" ( (binary_expression "(pIVar64 == (Incremental_inputs *)0x0) || ((char)ppuVar57 != '\0')" (parenthesized_expression "(pIVar64 == (Incremental_inputs *)0x0)" ( (binary_expression "pIVar64 == (Incremental_inputs *)0x0" identifier == (cast_expression "(Incremental_inputs *)0x0" ( (type_descriptor "Incremental_inputs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((char)ppuVar57 != '\0')" ( (binary_expression "(char)ppuVar57 != '\0'" (cast_expression "(char)ppuVar57" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000a22b0;" goto statement_identifier ;)) (labeled_statement "LAB_000a259c:\n                piVar62[-4] = (int)local_124;" statement_identifier : (expression_statement "piVar62[-4] = (int)local_124;" (assignment_expression "piVar62[-4] = (int)local_124" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)local_124" ( (type_descriptor "int" primitive_type) ) identifier)) ;)) (expression_statement "piVar62[-5] = 0xa25b0;" (assignment_expression "piVar62[-5] = 0xa25b0" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "bVar29 = can_incremental_update(piVar62[-4]);" (assignment_expression "bVar29 = can_incremental_update(piVar62[-4])" identifier = (call_expression "can_incremental_update(piVar62[-4])" identifier (argument_list "(piVar62[-4])" ( (subscript_expression "piVar62[-4]" identifier [ number_literal ]) )))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_00;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_00" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_00" ( (binary_expression "Shdr_data<64> *)extraout_ECX_00" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_00" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "ppuVar57 = local_120;" (assignment_expression "ppuVar57 = local_120" identifier = identifier) ;) (if_statement "if (bVar29) {\n                  local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4);\n                  local_154 = (undefined4)(shdr.p_)->sh_size;\n                  pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                            compressed_sections_;\n                  if (pCVar10 != (Compressed_section_map *)0x0) {\n                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;\n                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;\n                    p_Var52 = &p_Var1->_M_header;\n                    if (p_Var73 != (_Base_ptr)0x0) {\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }\n                  }\n                  piVar62[-3] = local_150;\n                  piVar62[-4] = local_154;\n                  piVar62[-5] = (int)pbVar70;\n                  piVar62[-6] = i;\n                  piVar62[-7] = (int)this;\n                  piVar62[-8] = (int)pIVar64;\n                  piVar62[-9] = 0xa263f;\n                  Incremental_inputs::report_input_section\n                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01;\n                }" if (parenthesized_expression "(bVar29)" ( identifier )) (compound_statement "{\n                  local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4);\n                  local_154 = (undefined4)(shdr.p_)->sh_size;\n                  pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                            compressed_sections_;\n                  if (pCVar10 != (Compressed_section_map *)0x0) {\n                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;\n                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;\n                    p_Var52 = &p_Var1->_M_header;\n                    if (p_Var73 != (_Base_ptr)0x0) {\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }\n                  }\n                  piVar62[-3] = local_150;\n                  piVar62[-4] = local_154;\n                  piVar62[-5] = (int)pbVar70;\n                  piVar62[-6] = i;\n                  piVar62[-7] = (int)this;\n                  piVar62[-8] = (int)pIVar64;\n                  piVar62[-9] = 0xa263f;\n                  Incremental_inputs::report_input_section\n                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));\n                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01;\n                }" { (expression_statement "local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4);" (assignment_expression "local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4)" identifier = (pointer_expression "*(undefined4 *)((int)&(shdr.p_)->sh_size + 4)" * (cast_expression "(undefined4 *)((int)&(shdr.p_)->sh_size + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(shdr.p_)->sh_size + 4)" ( (binary_expression "(int)&(shdr.p_)->sh_size + 4" (cast_expression "(int)&(shdr.p_)->sh_size" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(shdr.p_)->sh_size" & (field_expression "(shdr.p_)->sh_size" (parenthesized_expression "(shdr.p_)" ( (field_expression "shdr.p_" identifier . field_identifier) )) -> field_identifier))) + number_literal) ))))) ;) (expression_statement "local_154 = (undefined4)(shdr.p_)->sh_size;" (assignment_expression "local_154 = (undefined4)(shdr.p_)->sh_size" identifier = (field_expression "(undefined4)(shdr.p_)->sh_size" (call_expression "(undefined4)(shdr.p_)" (parenthesized_expression "(undefined4)" ( identifier )) (argument_list "(shdr.p_)" ( (field_expression "shdr.p_" identifier . field_identifier) ))) -> field_identifier)) ;) (expression_statement "pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                            compressed_sections_;" (assignment_expression "pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                            compressed_sections_" identifier = (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.\n                            compressed_sections_" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj.super_Object" (field_expression "(this->super_Sized_relobj<64,_false>).super_Relobj" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) . field_identifier)) ;) (if_statement "if (pCVar10 != (Compressed_section_map *)0x0) {\n                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;\n                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;\n                    p_Var52 = &p_Var1->_M_header;\n                    if (p_Var73 != (_Base_ptr)0x0) {\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }\n                  }" if (parenthesized_expression "(pCVar10 != (Compressed_section_map *)0x0)" ( (binary_expression "pCVar10 != (Compressed_section_map *)0x0" identifier != (cast_expression "(Compressed_section_map *)0x0" ( (type_descriptor "Compressed_section_map *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;\n                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;\n                    p_Var52 = &p_Var1->_M_header;\n                    if (p_Var73 != (_Base_ptr)0x0) {\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }\n                  }" { (expression_statement "p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;" (assignment_expression "p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header" identifier = (pointer_expression "&(pCVar10->_M_t)._M_impl.super__Rb_tree_header" & (field_expression "(pCVar10->_M_t)._M_impl.super__Rb_tree_header" (field_expression "(pCVar10->_M_t)._M_impl" (parenthesized_expression "(pCVar10->_M_t)" ( (field_expression "pCVar10->_M_t" identifier -> field_identifier) )) . field_identifier) . field_identifier))) ;) (expression_statement "p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;" (assignment_expression "p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent" identifier = (field_expression "(pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent" (field_expression "(pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header" (field_expression "(pCVar10->_M_t)._M_impl.super__Rb_tree_header" (field_expression "(pCVar10->_M_t)._M_impl" (parenthesized_expression "(pCVar10->_M_t)" ( (field_expression "pCVar10->_M_t" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) . field_identifier)) ;) (expression_statement "p_Var52 = &p_Var1->_M_header;" (assignment_expression "p_Var52 = &p_Var1->_M_header" identifier = (pointer_expression "&p_Var1->_M_header" & (field_expression "p_Var1->_M_header" identifier -> field_identifier))) ;) (if_statement "if (p_Var73 != (_Base_ptr)0x0) {\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }" if (parenthesized_expression "(p_Var73 != (_Base_ptr)0x0)" ( (binary_expression "p_Var73 != (_Base_ptr)0x0" identifier != (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) (compound_statement "{\n                      do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);\nLAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }\n                    }" { (do_statement "do {\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      } while (*pp_Var2 != (_Base_ptr)0x0);" do (compound_statement "{\n                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }\n                        pp_Var2 = &p_Var53->_M_right;\n                        p_Var73 = *pp_Var2;\n                        p_Var53 = p_Var52;\n                      }" { (while_statement "while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }" while (parenthesized_expression "(p_Var53 = p_Var73, i <= p_Var53[1]._M_color)" ( (comma_expression "p_Var53 = p_Var73, i <= p_Var53[1]._M_color" (assignment_expression "p_Var53 = p_Var73" identifier = identifier) , (binary_expression "i <= p_Var53[1]._M_color" identifier <= (field_expression "p_Var53[1]._M_color" (subscript_expression "p_Var53[1]" identifier [ number_literal ]) . field_identifier))) )) (compound_statement "{\n                          p_Var73 = p_Var53->_M_left;\n                          p_Var52 = p_Var53;\n                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;\n                        }" { (expression_statement "p_Var73 = p_Var53->_M_left;" (assignment_expression "p_Var73 = p_Var53->_M_left" identifier = (field_expression "p_Var53->_M_left" identifier -> field_identifier)) ;) (expression_statement "p_Var52 = p_Var53;" (assignment_expression "p_Var52 = p_Var53" identifier = identifier) ;) (if_statement "if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;" if (parenthesized_expression "(p_Var53->_M_left == (_Base_ptr)0x0)" ( (binary_expression "p_Var53->_M_left == (_Base_ptr)0x0" (field_expression "p_Var53->_M_left" identifier -> field_identifier) == (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) (goto_statement "goto LAB_000a260d;" goto statement_identifier ;)) })) (expression_statement "pp_Var2 = &p_Var53->_M_right;" (assignment_expression "pp_Var2 = &p_Var53->_M_right" identifier = (pointer_expression "&p_Var53->_M_right" & (field_expression "p_Var53->_M_right" identifier -> field_identifier))) ;) (expression_statement "p_Var73 = *pp_Var2;" (assignment_expression "p_Var73 = *pp_Var2" identifier = (pointer_expression "*pp_Var2" * identifier)) ;) (expression_statement "p_Var53 = p_Var52;" (assignment_expression "p_Var53 = p_Var52" identifier = identifier) ;) }) while (parenthesized_expression "(*pp_Var2 != (_Base_ptr)0x0)" ( (binary_expression "*pp_Var2 != (_Base_ptr)0x0" (pointer_expression "*pp_Var2" * identifier) != (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) ;) (labeled_statement "LAB_000a260d:\n                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }" statement_identifier : (if_statement "if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }" if (parenthesized_expression "((p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i))" ( (binary_expression "(p_Var1 != (_Rb_tree_header *)p_Var53) &&\n                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)" (parenthesized_expression "(p_Var1 != (_Rb_tree_header *)p_Var53)" ( (binary_expression "p_Var1 != (_Rb_tree_header *)p_Var53" identifier != (cast_expression "(_Rb_tree_header *)p_Var53" ( (type_descriptor "_Rb_tree_header *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) && (parenthesized_expression "(((_Rb_tree_header *)p_Var53)->_M_node_count <= i)" ( (binary_expression "((_Rb_tree_header *)p_Var53)->_M_node_count <= i" (field_expression "((_Rb_tree_header *)p_Var53)->_M_node_count" (parenthesized_expression "((_Rb_tree_header *)p_Var53)" ( (cast_expression "(_Rb_tree_header *)p_Var53" ( (type_descriptor "_Rb_tree_header *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier) <= identifier) ))) )) (compound_statement "{\n                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);\n                        local_150 = 0;\n                      }" { (expression_statement "local_154 = *(undefined4 *)((int)p_Var53 + 0x14);" (assignment_expression "local_154 = *(undefined4 *)((int)p_Var53 + 0x14)" identifier = (pointer_expression "*(undefined4 *)((int)p_Var53 + 0x14)" * (cast_expression "(undefined4 *)((int)p_Var53 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)p_Var53 + 0x14)" ( (binary_expression "(int)p_Var53 + 0x14" (cast_expression "(int)p_Var53" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "local_150 = 0;" (assignment_expression "local_150 = 0" identifier = number_literal) ;) }))) })) })) (expression_statement "piVar62[-3] = local_150;" (assignment_expression "piVar62[-3] = local_150" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-4] = local_154;" (assignment_expression "piVar62[-4] = local_154" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-5] = (int)pbVar70;" (assignment_expression "piVar62[-5] = (int)pbVar70" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-6] = i;" (assignment_expression "piVar62[-6] = i" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-7] = (int)this;" (assignment_expression "piVar62[-7] = (int)this" (subscript_expression "piVar62[-7]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-8] = (int)pIVar64;" (assignment_expression "piVar62[-8] = (int)pIVar64" (subscript_expression "piVar62[-8]" identifier [ number_literal ]) = (cast_expression "(int)pIVar64" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-9] = 0xa263f;" (assignment_expression "piVar62[-9] = 0xa263f" (subscript_expression "piVar62[-9]" identifier [ number_literal ]) = number_literal) ;) (labeled_statement "Incremental_inputs::report_input_section\n                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));" statement_identifier : (ERROR ":" :) (expression_statement "report_input_section\n                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));" (call_expression "report_input_section\n                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4))" identifier (argument_list "((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],\n                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4))" ( (cast_expression "(Incremental_inputs *)piVar62[-8]" ( (type_descriptor "Incremental_inputs *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-8]" identifier [ number_literal ])) , (cast_expression "(Object *)piVar62[-7]" ( (type_descriptor "Object *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-7]" identifier [ number_literal ])) , (subscript_expression "piVar62[-6]" identifier [ number_literal ]) , (cast_expression "(char *)piVar62[-5]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-5]" identifier [ number_literal ])) , (pointer_expression "*(off_t *)(piVar62 + -4)" * (cast_expression "(off_t *)(piVar62 + -4)" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar62 + -4)" ( (binary_expression "piVar62 + -4" identifier + number_literal) )))) ))) ;)) (expression_statement "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)extraout_ECX_01" ( (binary_expression "Shdr_data<64> *)extraout_ECX_01" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_01" * (ERROR ")" )) identifier)) ))) ;) })) (goto_statement "goto LAB_000a22b0;" goto statement_identifier ;) })) (expression_statement "piVar62[-2] = (int)SVar49.p_;" (assignment_expression "piVar62[-2] = (int)SVar49.p_" (subscript_expression "piVar62[-2]" identifier [ number_literal ]) = (cast_expression "(int)SVar49.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "SVar49.p_" identifier . field_identifier))) ;) (expression_statement "piVar62[-3] = (int)layout;" (assignment_expression "piVar62[-3] = (int)layout" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = (cast_expression "(int)layout" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-4] = (int)this;" (assignment_expression "piVar62[-4] = (int)this" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) comment (expression_statement "piVar62[-5] = 0xa326f;" (assignment_expression "piVar62[-5] = 0xa326f" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "layout_gnu_property_section\n                        ((Sized_relobj_file<64,_false> *)piVar62[-4],(Layout *)piVar62[-3],\n                         piVar62[-2]);" (call_expression "layout_gnu_property_section\n                        ((Sized_relobj_file<64,_false> *)piVar62[-4],(Layout *)piVar62[-3],\n                         piVar62[-2])" identifier (argument_list "((Sized_relobj_file<64,_false> *)piVar62[-4],(Layout *)piVar62[-3],\n                         piVar62[-2])" ( (parenthesized_expression "(Sized_relobj_file<64,_false> *)piVar62[-4],(Layout *)piVar62[-3],\n                         piVar62[-2])" ( (comma_expression "Sized_relobj_file<64,_false> *)piVar62[-4],(Layout *)piVar62[-3],\n                         piVar62[-2]" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false> *)piVar62[-4],(Layout *)piVar62[-3],\n                         piVar62[-2]" (binary_expression "_false> *)piVar62[-4]" identifier > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) , (comma_expression "(Layout *)piVar62[-3],\n                         piVar62[-2]" (cast_expression "(Layout *)piVar62[-3]" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) , (subscript_expression "piVar62[-2]" identifier [ number_literal ])))) )) ))) ;) (expression_statement "ppuVar57 = (undefined **)(i >> 5);" (assignment_expression "ppuVar57 = (undefined **)(i >> 5)" identifier = (cast_expression "(undefined **)(i >> 5)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(i >> 5)" ( (binary_expression "i >> 5" identifier >> number_literal) )))) ;) (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] | 1 << ((byte)i & 0x1f);" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] | 1 << ((byte)i & 0x1f)" (subscript_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57]" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std::allocator<bool" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =\n                   omit.super__Bvector_base<std" (subscript_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57]" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (cast_expression "(int)ppuVar57" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (cast_expression "(int)ppuVar57" ( (type_descriptor "int" primitive_type) ) identifier) ]) | (binary_expression "1 << ((byte)i & 0x1f)" number_literal << (parenthesized_expression "((byte)i & 0x1f)" ( (binary_expression "(byte)i & 0x1f" (cast_expression "(byte)i" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "SVar49.p_ = (Shdr_data<64> *)i;" (assignment_expression "SVar49.p_ = (Shdr_data<64> *)i" (field_expression "SVar49.p_" identifier . field_identifier) = (parenthesized_expression "(Shdr_data<64> *)i" ( (binary_expression "Shdr_data<64> *)i" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)i" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "uVar69 = i;" (assignment_expression "uVar69 = i" identifier = identifier) ;) }) else { (expression_statement "piVar62[-3] = iVar50;" (assignment_expression "piVar62[-3] = iVar50" (subscript_expression "piVar62[-3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-4] = (int)pbVar70;" (assignment_expression "piVar62[-4] = (int)pbVar70" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-5] = 0xa24ed;" (assignment_expression "piVar62[-5] = 0xa24ed" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iVar50 = strcmp((char *)piVar62[-4],(char *)piVar62[-3]);" (assignment_expression "iVar50 = strcmp((char *)piVar62[-4],(char *)piVar62[-3])" identifier = (call_expression "strcmp((char *)piVar62[-4],(char *)piVar62[-3])" identifier (argument_list "((char *)piVar62[-4],(char *)piVar62[-3])" ( (cast_expression "(char *)piVar62[-4]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-4]" identifier [ number_literal ])) , (cast_expression "(char *)piVar62[-3]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-3]" identifier [ number_literal ])) )))) ;) (expression_statement "bVar29 = iVar50 == 0;" (assignment_expression "bVar29 = iVar50 == 0" identifier = (binary_expression "iVar50 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar29) goto LAB_000a2b98;" if (parenthesized_expression "(!bVar29)" ( (unary_expression "!bVar29" ! identifier) )) (goto_statement "goto LAB_000a2b98;" goto statement_identifier ;)) (labeled_statement "LAB_000a24fe:\n              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] |\n                   1 << (bVar48 & 0x1f);" statement_identifier : (expression_statement "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] |\n                   1 << (bVar48 & 0x1f);" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] |\n                   1 << (bVar48 & 0x1f)" (subscript_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5]" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start.super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                   _M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std::allocator<bool" (assignment_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =\n                   omit.super__Bvector_base<std" (subscript_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5]" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start.super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n              _M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (binary_expression "(uint)SVar49.p_ >> 5" (cast_expression "(uint)SVar49.p_" ( (type_descriptor "uint" type_identifier) ) (field_expression "SVar49.p_" identifier . field_identifier)) >> number_literal) ]) = (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (binary_expression "(uint)SVar49.p_ >> 5" (cast_expression "(uint)SVar49.p_" ( (type_descriptor "uint" type_identifier) ) (field_expression "SVar49.p_" identifier . field_identifier)) >> number_literal) ]) | (binary_expression "1 << (bVar48 & 0x1f)" number_literal << (parenthesized_expression "(bVar48 & 0x1f)" ( (binary_expression "bVar48 & 0x1f" identifier & number_literal) )))) ;)) (if_statement "if (local_124 == (Sized_relobj_file<64,_false> *)0x7) goto LAB_000a2bcb;" if (parenthesized_expression "(local_124 == (Sized_relobj_file<64,_false> *)0x7)" ( (binary_expression "local_124 == (Sized_relobj_file<64,_false> *)0x7)" identifier == (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x7)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x7" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x7" identifier > (pointer_expression "*)0x7" * (ERROR ")" )) number_literal))) ))) )) (goto_statement "goto LAB_000a2bcb;" goto statement_identifier ;)) (labeled_statement "LAB_000a2522:\n              bVar29 = (1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                       [(uint)SVar49.p_ >> 5]) != 0;" statement_identifier : (expression_statement "bVar29 = (1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                       [(uint)SVar49.p_ >> 5]) != 0;" (assignment_expression "bVar29 = (1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                       [(uint)SVar49.p_ >> 5]) != 0" identifier = (binary_expression "(1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                       [(uint)SVar49.p_ >> 5]) != 0" (parenthesized_expression "(1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                       [(uint)SVar49.p_ >> 5])" ( (subscript_expression "1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p\n                       [(uint)SVar49.p_ >> 5]" (field_expression "1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p" (field_expression "1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start.super__Bit_iterator_base" (field_expression "1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data._M_start" (field_expression "1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.\n                       super__Bvector_impl_data" (field_expression "1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std::allocator<bool" (binary_expression "1 << (bVar48 & 0x1f) &\n                       omit.super__Bvector_base<std" (binary_expression "1 << (bVar48 & 0x1f)" number_literal << (parenthesized_expression "(bVar48 & 0x1f)" ( (binary_expression "bVar48 & 0x1f" identifier & number_literal) ))) & (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) [ (binary_expression "(uint)SVar49.p_ >> 5" (cast_expression "(uint)SVar49.p_" ( (type_descriptor "uint" type_identifier) ) (field_expression "SVar49.p_" identifier . field_identifier)) >> number_literal) ]) )) != number_literal)) ;)) (expression_statement "ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);" (assignment_expression "ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29)" identifier = (cast_expression "(undefined **)CONCAT31(uVar23 >> 5,bVar29)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(uVar23 >> 5,bVar29)" identifier (argument_list "(uVar23 >> 5,bVar29)" ( (binary_expression "uVar23 >> 5" identifier >> number_literal) , identifier ))))) ;) if (parenthesized_expression "(!bVar29)" ( (unary_expression "!bVar29" ! identifier) )) { (expression_statement "ppuVar57 = (undefined **)0x0;" (assignment_expression "ppuVar57 = (undefined **)0x0" identifier = (cast_expression "(undefined **)0x0" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (if_statement "if (local_124 != (Sized_relobj_file<64,_false> *)0x11) goto LAB_000a2551;" if (parenthesized_expression "(local_124 != (Sized_relobj_file<64,_false> *)0x11)" ( (binary_expression "local_124 != (Sized_relobj_file<64,_false> *)0x11)" identifier != (parenthesized_expression "(Sized_relobj_file<64,_false> *)0x11)" ( (comma_expression "Sized_relobj_file<64,_false> *)0x11" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)0x11" identifier > (pointer_expression "*)0x11" * (ERROR ")" )) number_literal))) ))) )) (goto_statement "goto LAB_000a2551;" goto statement_identifier ;)) (expression_statement "piVar62[-4] = (int)&omit;" (assignment_expression "piVar62[-4] = (int)&omit" (subscript_expression "piVar62[-4]" identifier [ number_literal ]) = (cast_expression "(int)&omit" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&omit" & identifier))) ;) (expression_statement "piVar62[-5] = local_148;" (assignment_expression "piVar62[-5] = local_148" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar62[-6] = (int)local_144;" (assignment_expression "piVar62[-6] = (int)local_144" (subscript_expression "piVar62[-6]" identifier [ number_literal ]) = (cast_expression "(int)local_144" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-7] = (int)local_160;" (assignment_expression "piVar62[-7] = (int)local_160" (subscript_expression "piVar62[-7]" identifier [ number_literal ]) = (cast_expression "(int)local_160" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-8] = (int)pbVar70;" (assignment_expression "piVar62[-8] = (int)pbVar70" (subscript_expression "piVar62[-8]" identifier [ number_literal ]) = (cast_expression "(int)pbVar70" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-9] = (int)SVar49.p_;" (assignment_expression "piVar62[-9] = (int)SVar49.p_" (subscript_expression "piVar62[-9]" identifier [ number_literal ]) = (cast_expression "(int)SVar49.p_" ( (type_descriptor "int" primitive_type) ) (field_expression "SVar49.p_" identifier . field_identifier))) ;) (expression_statement "piVar62[-10] = (int)layout;" (assignment_expression "piVar62[-10] = (int)layout" (subscript_expression "piVar62[-10]" identifier [ number_literal ]) = (cast_expression "(int)layout" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-0xb] = (int)symtab;" (assignment_expression "piVar62[-0xb] = (int)symtab" (subscript_expression "piVar62[-0xb]" identifier [ number_literal ]) = (cast_expression "(int)symtab" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "piVar62[-0xc] = (int)this;" (assignment_expression "piVar62[-0xc] = (int)this" (subscript_expression "piVar62[-0xc]" identifier [ number_literal ]) = (cast_expression "(int)this" ( (type_descriptor "int" primitive_type) ) identifier)) ;) comment (expression_statement "piVar62[-0xd] = 0xa3371;" (assignment_expression "piVar62[-0xd] = 0xa3371" (subscript_expression "piVar62[-0xd]" identifier [ number_literal ]) = number_literal) ;) identifier = identifier ( ( (ERROR "Sized_relobj_file<64,_false> *)piVar62[-0xc],\n                                    (Symbol_table *)piVar62[-0xb],(Layout *)piVar62[-10],piVar62[-9]\n                                    ,(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4]);" (comma_expression "Sized_relobj_file<64,_false> *)piVar62[-0xc],\n                                    (Symbol_table *)piVar62[-0xb],(Layout *)piVar62[-10],piVar62[-9]\n                                    ,(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false> *)piVar62[-0xc],\n                                    (Symbol_table *)piVar62[-0xb],(Layout *)piVar62[-10],piVar62[-9]\n                                    ,(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" (binary_expression "_false> *)piVar62[-0xc]" identifier > (pointer_expression "*)piVar62[-0xc]" * (ERROR ")" )) (subscript_expression "piVar62[-0xc]" identifier [ number_literal ]))) , (comma_expression "(Symbol_table *)piVar62[-0xb],(Layout *)piVar62[-10],piVar62[-9]\n                                    ,(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" (cast_expression "(Symbol_table *)piVar62[-0xb]" ( (type_descriptor "Symbol_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-0xb]" identifier [ number_literal ])) , (comma_expression "(Layout *)piVar62[-10],piVar62[-9]\n                                    ,(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" (cast_expression "(Layout *)piVar62[-10]" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-10]" identifier [ number_literal ])) , (comma_expression "piVar62[-9]\n                                    ,(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" (subscript_expression "piVar62[-9]" identifier [ number_literal ]) , (comma_expression "(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" (cast_expression "(char *)piVar62[-8]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-8]" identifier [ number_literal ])) , (comma_expression "(uchar *)piVar62[-7],(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" (cast_expression "(uchar *)piVar62[-7]" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-7]" identifier [ number_literal ])) , (comma_expression "(char *)piVar62[-6],\n                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" (cast_expression "(char *)piVar62[-6]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar62[-6]" identifier [ number_literal ])) , (comma_expression "piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" (subscript_expression "piVar62[-5]" identifier [ number_literal ]) , (parenthesized_expression "(vector<bool,_std::allocator<bool>_> *)piVar62[-4])" ( (ERROR "vector<bool,_std::" (comma_expression "vector<bool,_std" (binary_expression "vector<bool" identifier < identifier) , identifier) : :) (binary_expression "allocator<bool>_> *)piVar62[-4]" (binary_expression "allocator<bool>_" (binary_expression "allocator<bool" identifier < identifier) > identifier) > (pointer_expression "*)piVar62[-4]" * (ERROR ")" )) (subscript_expression "piVar62[-4]" identifier [ number_literal ]))) ))))))))))) ;) (field_expression "SVar49.p_" identifier . field_identifier) = ( (ERROR "Shdr_data<64> *)extraout_ECX_10;\n                uVar69 = i;\n                if (!bVar29) goto LAB_000a2c3a;\n                ppuVar57 = (undefined **)0x0;\n                pSVar51 = extraout_ECX_10;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              pIVar64 = layout->incremental_inputs_;\n              uVar69 = (uint)SVar49.p_;\n              if (pIVar64 == (Incremental_inputs *)0x0) {\n                if ((char)ppuVar57 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)ppuVar57 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            i = uVar69;\n            (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n            super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.\n            _M_impl._M_start[i] = (Output_section *)0x0;\n            puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>\n                      ._M_impl._M_start;\n            *(undefined4 *)(puVar18 + i) = 0xffffffff;\n            *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;\n          }\nLAB_000a23a1:\n          uVar63 = i + 1;\n          pSVar67 = local_134 + 1;\n          i = uVar63;\n          if (uVar6 <= uVar63) goto LAB_000a2740;\n          shdr.p_ = pSVar67;\n          uVar69 = pSVar67->sh_name;" (binary_expression "Shdr_data<64> *)extraout_ECX_10" (binary_expression "Shdr_data<64" identifier < number_literal) > (pointer_expression "*)extraout_ECX_10" * (ERROR ")" )) identifier)) ; (call_expression "uVar69 = i;\n                if (!bVar29)" (assignment_expression "uVar69 = i" identifier = identifier) (ERROR ";\n                if" ; if) (argument_list "(!bVar29)" ( (unary_expression "!bVar29" ! identifier) ))) identifier identifier ; (assignment_expression "ppuVar57 = (undefined **)0x0" identifier = (cast_expression "(undefined **)0x0" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ; (assignment_expression "pSVar51 = extraout_ECX_10" identifier = identifier) ; goto identifier ; } identifier : (assignment_expression "pIVar64 = layout->incremental_inputs_" identifier = (field_expression "layout->incremental_inputs_" identifier -> field_identifier)) ; (call_expression "uVar69 = (uint)SVar49.p_;\n              if (pIVar64 == (Incremental_inputs *)0x0)" (assignment_expression "uVar69 = (uint)SVar49.p_" identifier = (cast_expression "(uint)SVar49.p_" ( (type_descriptor "uint" type_identifier) ) (field_expression "SVar49.p_" identifier . field_identifier))) (ERROR ";\n              if" ; if) (argument_list "(pIVar64 == (Incremental_inputs *)0x0)" ( (binary_expression "pIVar64 == (Incremental_inputs *)0x0" identifier == (cast_expression "(Incremental_inputs *)0x0" ( (type_descriptor "Incremental_inputs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) (compound_statement "{\n                if ((char)ppuVar57 == '\0') goto LAB_000a22b0;\n              }" { (if_statement "if ((char)ppuVar57 == '\0') goto LAB_000a22b0;" if (parenthesized_expression "((char)ppuVar57 == '\0')" ( (binary_expression "(char)ppuVar57 == '\0'" (cast_expression "(char)ppuVar57" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a22b0;" goto statement_identifier ;)) }) else if (parenthesized_expression "((char)ppuVar57 == '\0')" ( (binary_expression "(char)ppuVar57 == '\0'" (cast_expression "(char)ppuVar57" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) identifier identifier ; } identifier : (binary_expression "i = uVar69;\n            (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n            super__Vector_base<gold" (field_expression "i = uVar69;\n            (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.\n            super__Vector_base" (field_expression "i = uVar69;\n            (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_" (field_expression "i = uVar69;\n            (this->super_Sized_relobj<64,_false>).super_Relobj" (call_expression "i = uVar69;\n            (this->super_Sized_relobj<64,_false>)" (assignment_expression "i = uVar69" identifier = identifier) (ERROR ";" ;) (argument_list "(this->super_Sized_relobj<64,_false>)" ( (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier (ERROR ">" >) ))) . field_identifier) . field_identifier) . field_identifier) < identifier) : : (type_descriptor "Output_section*" type_identifier (abstract_pointer_declarator "*" *)) , identifier : : (binary_expression "allocator<gold" identifier < identifier) : : (assignment_expression "Output_section*>_>.\n            _M_impl._M_start[i] = (Output_section *)0x0" (subscript_expression "Output_section*>_>.\n            _M_impl._M_start[i]" (field_expression "Output_section*>_>.\n            _M_impl._M_start" (field_expression "Output_section*>_>.\n            _M_impl" (binary_expression "Output_section*>_" identifier * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) [ identifier ]) = (cast_expression "(Output_section *)0x0" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ; (comma_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                      super__Vector_base<long_long_unsigned_int,_std" (assignment_expression "puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.\n                      super__Vector_base<long_long_unsigned_int" identifier = (binary_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                      super__Vector_base<long_long_unsigned_int" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_.\n                      super__Vector_base" (field_expression "(this->super_Sized_relobj<64,_false>).section_offsets_" (parenthesized_expression "(this->super_Sized_relobj<64,_false>)" ( (comma_expression "this->super_Sized_relobj<64,_false" (binary_expression "this->super_Sized_relobj<64" (field_expression "this->super_Sized_relobj" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) . field_identifier) < identifier)) , identifier) : : (binary_expression "allocator<long_long_unsigned_int>_>\n                      ._M_impl._M_start;\n            *(undefined4 *)(puVar18 + i) = 0xffffffff;\n            *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff" (binary_expression "allocator<long_long_unsigned_int>_>\n                      ._M_impl._M_start;\n            *(undefined4 *)(puVar18 + i) = 0xffffffff" (field_expression "allocator<long_long_unsigned_int>_>\n                      ._M_impl._M_start" (field_expression "allocator<long_long_unsigned_int>_>\n                      ._M_impl" (binary_expression "allocator<long_long_unsigned_int>_" (binary_expression "allocator<long_long_unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) (ERROR ";" ;) * (cast_expression "(undefined4 *)(puVar18 + i) = 0xffffffff" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "(puVar18 + i) = 0xffffffff" (parenthesized_expression "(puVar18 + i)" ( (binary_expression "puVar18 + i" identifier + identifier) )) = number_literal))) (ERROR ";" ;) * (cast_expression "(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "((int)puVar18 + i * 8 + 4) = 0xffffffff" (parenthesized_expression "((int)puVar18 + i * 8 + 4)" ( (binary_expression "(int)puVar18 + i * 8 + 4" (binary_expression "(int)puVar18 + i * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "i * 8" identifier * number_literal)) + number_literal) )) = number_literal))) ; } identifier : (assignment_expression "uVar63 = i + 1" identifier = (binary_expression "i + 1" identifier + number_literal)) ; (assignment_expression "pSVar67 = local_134 + 1" identifier = (binary_expression "local_134 + 1" identifier + number_literal)) ; (call_expression "i = uVar63;\n          if (uVar6 <= uVar63)" (assignment_expression "i = uVar63" identifier = identifier) (ERROR ";\n          if" ; if) (argument_list "(uVar6 <= uVar63)" ( (binary_expression "uVar6 <= uVar63" identifier <= identifier) ))) identifier identifier ; (assignment_expression "shdr.p_ = pSVar67" (field_expression "shdr.p_" identifier . field_identifier) = identifier) ; (assignment_expression "uVar69 = pSVar67->sh_name" identifier = (field_expression "pSVar67->sh_name" identifier -> field_identifier)) ;) identifier = ( (ERROR "Sized_relobj_file<64,_false> *)local_134[1].sh_type;\n          puVar59 = (undefined1 *)piVar62;\n          local_134 = pSVar67;\n        } while (uVar69 < local_148);\n      }\n      uVar6 = i;\n      shdr.p_ = local_134;\n      *(char **)(puVar59 + -0x10) = "bad section name offset for section %u: %lu";\n      *(undefined4 *)(puVar59 + -0x14) = 0xa3657;\n      uVar39 = gettext();\n      *(uint *)(puVar59 + -4) = uVar69;\n      *(uint *)(puVar59 + -8) = uVar6;\n      *(undefined4 *)(puVar59 + -0xc) = uVar39;\n      *(Sized_relobj_file<64,_false> **)(puVar59 + -0x10) = this;\n      *(undefined4 *)(puVar59 + -0x14) = 0xa3665;\n      Object::error(*(Object **)(puVar59 + -0x10),*(char **)(puVar59 + -0xc));\n      piVar62 = (int *)puVar59;\n    }\n    if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n        ._M_start != (pointer)0x0) {\n      *(pointer *)((int)piVar62 + -0x10) =\n           debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n           _M_impl._M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28af;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n    if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0) {\n      *(pointer *)((int)piVar62 + -0x10) =\n           debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n           _M_impl._M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28cb;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n    if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0) {\n      *(pointer *)((int)piVar62 + -0x10) =\n           eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n           ._M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28e7;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n    if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0) {\n      *(pointer *)((int)piVar62 + -0x10) =\n           reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n           _M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa2903;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n    if (omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n        super__Bit_iterator_base._M_p != (_Bit_type *)0x0) {\n      *(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa291f;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }\n  }\n  *(undefined4 **)((int)piVar62 + -0x10) = puVar31;\n  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2938;\n  operator_delete(*(void **)((int)piVar62 + -0x10));\n  *(undefined4 **)((int)piVar62 + -0x10) = puVar30;\n  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2944;" (comma_expression "Sized_relobj_file<64,_false> *)local_134[1].sh_type" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> *)local_134[1].sh_type" identifier > (pointer_expression "*)local_134[1].sh_type" * (ERROR ")" )) (field_expression "local_134[1].sh_type" (subscript_expression "local_134[1]" identifier [ number_literal ]) . field_identifier)))) ; (assignment_expression "puVar59 = (undefined1 *)piVar62" identifier = (cast_expression "(undefined1 *)piVar62" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ; (call_expression "local_134 = pSVar67;\n        } while (uVar69 < local_148)" (assignment_expression "local_134 = pSVar67" identifier = identifier) (ERROR ";\n        } while" ; } while) (argument_list "(uVar69 < local_148)" ( (binary_expression "uVar69 < local_148" identifier < identifier) ))) ; } (assignment_expression "uVar6 = i" identifier = identifier) ; (binary_expression "shdr.p_ = local_134;\n      *(char **)(puVar59 + -0x10) = "bad section name offset for section %u: %lu";\n      *(undefined4 *)(puVar59 + -0x14) = 0xa3657" (binary_expression "shdr.p_ = local_134;\n      *(char **)(puVar59 + -0x10) = "bad section name offset for section %u: %lu"" (assignment_expression "shdr.p_ = local_134" (field_expression "shdr.p_" identifier . field_identifier) = identifier) (ERROR ";" ;) * (cast_expression "(char **)(puVar59 + -0x10) = "bad section name offset for section %u: %lu"" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (assignment_expression "(puVar59 + -0x10) = "bad section name offset for section %u: %lu"" (parenthesized_expression "(puVar59 + -0x10)" ( (binary_expression "puVar59 + -0x10" identifier + number_literal) )) = (string_literal ""bad section name offset for section %u: %lu"" " string_content ")))) (ERROR ";" ;) * (cast_expression "(undefined4 *)(puVar59 + -0x14) = 0xa3657" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "(puVar59 + -0x14) = 0xa3657" (parenthesized_expression "(puVar59 + -0x14)" ( (binary_expression "puVar59 + -0x14" identifier + number_literal) )) = number_literal))) ; (binary_expression "uVar39 = gettext();\n      *(uint *)(puVar59 + -4) = uVar69;\n      *(uint *)(puVar59 + -8) = uVar6;\n      *(undefined4 *)(puVar59 + -0xc) = uVar39;\n      *(Sized_relobj_file<64,_false> **)(puVar59 + -0x10) = this;\n      *(undefined4 *)(puVar59 + -0x14) = 0xa3665" (binary_expression "uVar39 = gettext();\n      *(uint *)(puVar59 + -4) = uVar69;\n      *(uint *)(puVar59 + -8) = uVar6;\n      *(undefined4 *)(puVar59 + -0xc) = uVar39;\n      *(Sized_relobj_file<64,_false> **)(puVar59 + -0x10) = this" (binary_expression "uVar39 = gettext();\n      *(uint *)(puVar59 + -4) = uVar69;\n      *(uint *)(puVar59 + -8) = uVar6;\n      *(undefined4 *)(puVar59 + -0xc) = uVar39" (binary_expression "uVar39 = gettext();\n      *(uint *)(puVar59 + -4) = uVar69;\n      *(uint *)(puVar59 + -8) = uVar6" (binary_expression "uVar39 = gettext();\n      *(uint *)(puVar59 + -4) = uVar69" (assignment_expression "uVar39 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) (ERROR ";" ;) * (cast_expression "(uint *)(puVar59 + -4) = uVar69" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "(puVar59 + -4) = uVar69" (parenthesized_expression "(puVar59 + -4)" ( (binary_expression "puVar59 + -4" identifier + number_literal) )) = identifier))) (ERROR ";" ;) * (cast_expression "(uint *)(puVar59 + -8) = uVar6" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "(puVar59 + -8) = uVar6" (parenthesized_expression "(puVar59 + -8)" ( (binary_expression "puVar59 + -8" identifier + number_literal) )) = identifier))) (ERROR ";" ;) * (cast_expression "(undefined4 *)(puVar59 + -0xc) = uVar39" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "(puVar59 + -0xc) = uVar39" (parenthesized_expression "(puVar59 + -0xc)" ( (binary_expression "puVar59 + -0xc" identifier + number_literal) )) = identifier))) (ERROR ";" ;) * (assignment_expression "(Sized_relobj_file<64,_false> **)(puVar59 + -0x10) = this" (call_expression "(Sized_relobj_file<64,_false> **)(puVar59 + -0x10)" (parenthesized_expression "(Sized_relobj_file<64,_false> **)" ( (comma_expression "Sized_relobj_file<64,_false> **" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) )) (argument_list "(puVar59 + -0x10)" ( (binary_expression "puVar59 + -0x10" identifier + number_literal) ))) = identifier)) (ERROR ";" ;) * (cast_expression "(undefined4 *)(puVar59 + -0x14) = 0xa3665" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "(puVar59 + -0x14) = 0xa3665" (parenthesized_expression "(puVar59 + -0x14)" ( (binary_expression "puVar59 + -0x14" identifier + number_literal) )) = number_literal))) ; identifier : : (call_expression "error(*(Object **)(puVar59 + -0x10),*(char **)(puVar59 + -0xc))" identifier (argument_list "(*(Object **)(puVar59 + -0x10),*(char **)(puVar59 + -0xc))" ( (pointer_expression "*(Object **)(puVar59 + -0x10)" * (cast_expression "(Object **)(puVar59 + -0x10)" ( (type_descriptor "Object **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar59 + -0x10)" ( (binary_expression "puVar59 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar59 + -0xc)" * (cast_expression "(char **)(puVar59 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar59 + -0xc)" ( (binary_expression "puVar59 + -0xc" identifier + number_literal) )))) ))) ; (call_expression "piVar62 = (int *)puVar59;\n    }\n    if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n        ._M_start != (pointer)0x0)" (assignment_expression "piVar62 = (int *)puVar59" identifier = (cast_expression "(int *)puVar59" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) (ERROR ";\n    }\n    if" ; } if) (argument_list "(debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n        ._M_start != (pointer)0x0)" ( (binary_expression "debug_types_sections.super__Vector_base<unsigned_int" (field_expression "debug_types_sections.super__Vector_base" identifier . field_identifier) < identifier) , (ERROR "_std::" identifier : :) (binary_expression "allocator<unsigned_int>_>._M_impl\n        ._M_start != (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl\n        ._M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ))) (compound_statement "{\n      *(pointer *)((int)piVar62 + -0x10) =\n           debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n           _M_impl._M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28af;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }" { (ERROR "*(pointer *)((int)piVar62 + -0x10) =\n           debug_types_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "*(pointer *)((int)piVar62 + -0x10) =\n           debug_types_sections.super__Vector_base<unsigned_int,_std" (assignment_expression "*(pointer *)((int)piVar62 + -0x10) =\n           debug_types_sections.super__Vector_base<unsigned_int" (pointer_expression "*(pointer *)((int)piVar62 + -0x10)" * (cast_expression "(pointer *)((int)piVar62 + -0x10)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "debug_types_sections.super__Vector_base<unsigned_int" (field_expression "debug_types_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>.\n           _M_impl._M_start;" (field_expression "allocator<unsigned_int>_>.\n           _M_impl._M_start" (field_expression "allocator<unsigned_int>_>.\n           _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa28af;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa28af" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete(*(void **)((int)piVar62 + -0x10));" (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) }) if (parenthesized_expression "(debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0)" ( (ERROR "debug_info_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "debug_info_sections.super__Vector_base<unsigned_int,_std" (binary_expression "debug_info_sections.super__Vector_base<unsigned_int" (field_expression "debug_info_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (binary_expression "allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n        _M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) )) (compound_statement "{\n      *(pointer *)((int)piVar62 + -0x10) =\n           debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.\n           _M_impl._M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28cb;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }" { (ERROR "*(pointer *)((int)piVar62 + -0x10) =\n           debug_info_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "*(pointer *)((int)piVar62 + -0x10) =\n           debug_info_sections.super__Vector_base<unsigned_int,_std" (assignment_expression "*(pointer *)((int)piVar62 + -0x10) =\n           debug_info_sections.super__Vector_base<unsigned_int" (pointer_expression "*(pointer *)((int)piVar62 + -0x10)" * (cast_expression "(pointer *)((int)piVar62 + -0x10)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "debug_info_sections.super__Vector_base<unsigned_int" (field_expression "debug_info_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>.\n           _M_impl._M_start;" (field_expression "allocator<unsigned_int>_>.\n           _M_impl._M_start" (field_expression "allocator<unsigned_int>_>.\n           _M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa28cb;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa28cb" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete(*(void **)((int)piVar62 + -0x10));" (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) }) if (parenthesized_expression "(eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0)" ( (ERROR "eh_frame_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "eh_frame_sections.super__Vector_base<unsigned_int,_std" (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (binary_expression "allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n        _M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) )) (compound_statement "{\n      *(pointer *)((int)piVar62 + -0x10) =\n           eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl\n           ._M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28e7;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }" { (ERROR "*(pointer *)((int)piVar62 + -0x10) =\n           eh_frame_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "*(pointer *)((int)piVar62 + -0x10) =\n           eh_frame_sections.super__Vector_base<unsigned_int,_std" (assignment_expression "*(pointer *)((int)piVar62 + -0x10) =\n           eh_frame_sections.super__Vector_base<unsigned_int" (pointer_expression "*(pointer *)((int)piVar62 + -0x10)" * (cast_expression "(pointer *)((int)piVar62 + -0x10)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "eh_frame_sections.super__Vector_base<unsigned_int" (field_expression "eh_frame_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl\n           ._M_start;" (field_expression "allocator<unsigned_int>_>._M_impl\n           ._M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa28e7;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa28e7" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete(*(void **)((int)piVar62 + -0x10));" (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) }) if (parenthesized_expression "(reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0)" ( (ERROR "reloc_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "reloc_sections.super__Vector_base<unsigned_int,_std" (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier) , identifier) : :) (binary_expression "allocator<unsigned_int>_>._M_impl.\n        _M_start != (pointer)0x0" (field_expression "allocator<unsigned_int>_>._M_impl.\n        _M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) != (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) )) (compound_statement "{\n      *(pointer *)((int)piVar62 + -0x10) =\n           reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.\n           _M_start;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa2903;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }" { (ERROR "*(pointer *)((int)piVar62 + -0x10) =\n           reloc_sections.super__Vector_base<unsigned_int,_std::" (comma_expression "*(pointer *)((int)piVar62 + -0x10) =\n           reloc_sections.super__Vector_base<unsigned_int,_std" (assignment_expression "*(pointer *)((int)piVar62 + -0x10) =\n           reloc_sections.super__Vector_base<unsigned_int" (pointer_expression "*(pointer *)((int)piVar62 + -0x10)" * (cast_expression "(pointer *)((int)piVar62 + -0x10)" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "reloc_sections.super__Vector_base<unsigned_int" (field_expression "reloc_sections.super__Vector_base" identifier . field_identifier) < identifier)) , identifier) : :) (expression_statement "allocator<unsigned_int>_>._M_impl.\n           _M_start;" (field_expression "allocator<unsigned_int>_>._M_impl.\n           _M_start" (field_expression "allocator<unsigned_int>_>._M_impl" (binary_expression "allocator<unsigned_int>_" (binary_expression "allocator<unsigned_int" identifier < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa2903;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa2903" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete(*(void **)((int)piVar62 + -0x10));" (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) }) if (parenthesized_expression "(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n        super__Bit_iterator_base._M_p != (_Bit_type *)0x0)" ( (binary_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n        super__Bit_iterator_base._M_p != (_Bit_type *)0x0" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n        super__Bit_iterator_base._M_p" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.\n        super__Bit_iterator_base" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "omit.super__Bvector_base<std::allocator<bool" (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) != (cast_expression "(_Bit_type *)0x0" ( (type_descriptor "_Bit_type *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p;\n      *(undefined4 *)((int)piVar62 + -0x14) = 0xa291f;\n      operator_delete(*(void **)((int)piVar62 + -0x10));\n    }" { (expression_statement "*(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p;" (field_expression "*(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base._M_p" (field_expression "*(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n           .super__Bit_iterator_base" (field_expression "*(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "*(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "*(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "*(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool>_" (binary_expression "*(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std::allocator<bool" (assignment_expression "*(_Bit_type **)((int)piVar62 + -0x10) =\n           omit.super__Bvector_base<std" (pointer_expression "*(_Bit_type **)((int)piVar62 + -0x10)" * (cast_expression "(_Bit_type **)((int)piVar62 + -0x10)" ( (type_descriptor "_Bit_type **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "omit.super__Bvector_base<std" (field_expression "omit.super__Bvector_base" identifier . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) ;) (expression_statement "*(undefined4 *)((int)piVar62 + -0x14) = 0xa291f;" (assignment_expression "*(undefined4 *)((int)piVar62 + -0x14) = 0xa291f" (pointer_expression "*(undefined4 *)((int)piVar62 + -0x14)" * (cast_expression "(undefined4 *)((int)piVar62 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "operator_delete(*(void **)((int)piVar62 + -0x10));" (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ;) }) } (binary_expression "*(undefined4 **)((int)piVar62 + -0x10) = puVar31;\n  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2938" (assignment_expression "*(undefined4 **)((int)piVar62 + -0x10) = puVar31" (pointer_expression "*(undefined4 **)((int)piVar62 + -0x10)" * (cast_expression "(undefined4 **)((int)piVar62 + -0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) (ERROR ";" ;) * (cast_expression "(undefined4 *)((int)piVar62 + -0x14) = 0xa2938" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "((int)piVar62 + -0x14) = 0xa2938" (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) = number_literal))) ; (binary_expression "operator_delete(*(void **)((int)piVar62 + -0x10));\n  *(undefined4 **)((int)piVar62 + -0x10) = puVar30;\n  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2944" (binary_expression "operator_delete(*(void **)((int)piVar62 + -0x10));\n  *(undefined4 **)((int)piVar62 + -0x10) = puVar30" (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) (ERROR ";" ;) * (cast_expression "(undefined4 **)((int)piVar62 + -0x10) = puVar30" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (assignment_expression "((int)piVar62 + -0x10) = puVar30" (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) = identifier))) (ERROR ";" ;) * (cast_expression "(undefined4 *)((int)piVar62 + -0x14) = 0xa2944" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "((int)piVar62 + -0x14) = 0xa2944" (parenthesized_expression "((int)piVar62 + -0x14)" ( (binary_expression "(int)piVar62 + -0x14" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) = number_literal))) ;) (call_expression "operator_delete(*(void **)((int)piVar62 + -0x10))" identifier (argument_list "(*(void **)((int)piVar62 + -0x10))" ( (pointer_expression "*(void **)((int)piVar62 + -0x10)" * (cast_expression "(void **)((int)piVar62 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)piVar62 + -0x10)" ( (binary_expression "(int)piVar62 + -0x10" (cast_expression "(int)piVar62" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ; return ; })
(translation_unit "void FUN_000a1d70(uint *******param_1,int param_2,int param_3,int *param_4)\n\n{\n  uint ******ppppppuVar1;\n  uint *puVar2;\n  byte bVar3;\n  uint ***pppuVar4;\n  int iVar5;\n  code *pcVar6;\n  char cVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  uint ******ppppppuVar13;\n  uint ****ppppuVar14;\n  uint *****pppppuVar15;\n  undefined *puVar16;\n  uint ******ppppppuVar17;\n  uint *****pppppuVar18;\n  uint *******extraout_ECX;\n  int iVar19;\n  uint *******extraout_ECX_00;\n  uint ******ppppppuVar20;\n  uint *******extraout_ECX_01;\n  uint *******extraout_ECX_02;\n  uint *******extraout_ECX_03;\n  uint *******extraout_ECX_04;\n  uint *******extraout_ECX_05;\n  uint *******extraout_ECX_06;\n  uint *******extraout_ECX_07;\n  uint *******extraout_ECX_08;\n  uint *******extraout_ECX_09;\n  uint *******extraout_ECX_10;\n  uint *******extraout_ECX_11;\n  uint *******extraout_ECX_12;\n  uint *******extraout_ECX_13;\n  uint *******extraout_ECX_14;\n  uint *******extraout_ECX_15;\n  uint *******extraout_ECX_16;\n  uint *******extraout_ECX_17;\n  uint *******extraout_ECX_18;\n  uint *******extraout_ECX_19;\n  uint *******extraout_ECX_20;\n  uint *******extraout_ECX_21;\n  uint *******extraout_ECX_22;\n  uint *******extraout_ECX_23;\n  uint *******extraout_ECX_24;\n  uint *******extraout_ECX_25;\n  uint *******extraout_ECX_26;\n  uint *******extraout_ECX_27;\n  uint *******extraout_ECX_28;\n  uint *******extraout_ECX_29;\n  uint *******extraout_ECX_30;\n  uint *******extraout_ECX_31;\n  uint ******ppppppuVar21;\n  uint *******pppppppuVar22;\n  undefined1 *puVar23;\n  undefined1 *puVar24;\n  undefined1 *puVar26;\n  uint *******pppppppuVar27;\n  uint *******pppppppuVar28;\n  uint *******pppppppuVar29;\n  byte *pbVar30;\n  byte *pbVar31;\n  uint *******pppppppuVar32;\n  bool bVar33;\n  bool bVar34;\n  bool bVar35;\n  byte bVar36;\n  undefined1 auStack_1ac [8];\n  uint *******local_1a4;\n  uint *******local_1a0;\n  int local_19c;\n  uint *******local_198;\n  uint *******local_194;\n  uint *******local_190;\n  uint *******local_18c;\n  uint ******local_188;\n  uint *******local_184;\n  uint ******local_180;\n  uint *******local_17c;\n  uint *******local_178;\n  uint *******local_174;\n  uint *******local_170;\n  uint *******local_16c;\n  uint local_168;\n  uint ******local_164;\n  uint ******local_160;\n  undefined4 *local_15c;\n  undefined4 *local_158;\n  uint *******local_154;\n  uint ******local_150;\n  int local_14c;\n  uint ******local_148;\n  uint ******local_144;\n  uint *******local_140;\n  uint *******local_13c;\n  char local_138;\n  byte local_137;\n  byte local_136;\n  char local_135;\n  uint *******local_134;\n  uint *******local_130;\n  uint *******local_12c;\n  undefined4 local_128;\n  uint *******local_124;\n  uint *******local_120;\n  int *local_11c;\n  undefined4 local_118;\n  int local_110;\n  char local_10c [4];\n  undefined4 local_108;\n  uint *******local_100 [3];\n  undefined1 local_f1;\n  uint *******local_f0;\n  uint *******local_ec;\n  uint *******local_e8;\n  uint ******local_e4;\n  uint *******local_e0;\n  uint *******local_dc;\n  uint *******local_d8;\n  int *local_d4;\n  int *local_d0;\n  int *local_cc;\n  int *local_c8;\n  int *local_c4;\n  int *local_c0;\n  int *local_bc;\n  int *local_b8;\n  int *local_b4;\n  void *local_b0;\n  undefined4 local_ac;\n  void *local_a8;\n  uint local_a4;\n  byte *local_a0;\n  uint *******local_9c;\n  uint *******local_98;\n  uint ******local_94 [4];\n  uint *******local_84;\n  uint *******local_80;\n  uint ******local_7c [4];\n  uint *******local_6c;\n  undefined4 local_68;\n  uint *******local_64;\n  uint ******local_60;\n  uint *******local_5c;\n  uint ******local_58;\n  uint ******local_54;\n  uint ******local_50;\n  uint ******local_4c;\n  uint ******local_48;\n  uint ******local_44;\n  uint ******local_40;\n  uint ******local_3c;\n  uint ******local_38;\n  uint ******local_34;\n  uint ******local_30;\n  uint ******local_2c;\n  uint ******local_28;\n  uint ******local_24;\n  undefined1 *puVar25;\n  \n  bVar36 = 0;\n  local_120 = (uint *******)&__DT_PLTGOT;\n  local_13c = (uint *******)&DAT_00302378;\n  if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    \n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }\n  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);\n  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);\n  local_130 = (uint *******)param_1[10];\n  pppppppuVar22 = (uint *******)&DAT_00302378;\n  pppppppuVar29 = (uint *******)&__DT_PLTGOT;\n  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;\n  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }\nLAB_000a1e71:\n  pppppppuVar29 = local_124;\n  pppppppuVar22 = local_130;\n  ppppuVar14 = pppppuVar15[0x164f];\n  local_124 = (uint *******)((uint)local_124 & 0xffffff00);\n  if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }\n  if ((uint *******)0x3fffffff < local_130) {\n                    \n    FUN_001c5fe0();\n  }\n  local_14c = (int)local_130 * 4;\n  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);\n  iVar19 = local_14c;\n  puVar8 = local_158;\n  if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }\n                    \n  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);\n  puVar24 = auStack_1ac;\n  puVar26 = auStack_1ac;\n  pppppppuVar22 = (uint *******)(local_160 + 0x10);\n  puVar8 = local_15c;\n  local_134 = pppppppuVar22;\n  if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }\n  local_140 = (uint *******)0x0;\nLAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }\n  if (param_1[7] == (uint ******)0x0) {\n                    \n                    \n    FUN_000917c0();\n  }\n                    \n  local_137 = FUN_0005cf90(param_1[7]);\n  if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    \n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }\n  *(undefined4 **)(puVar24 + -0x10) = local_15c;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;\n  FUN_001807a0();\n  *(undefined4 **)(puVar24 + -0x10) = local_158;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;\n  FUN_001807a0();\n  return;\n}\n\n" (function_definition "void FUN_000a1d70(uint *******param_1,int param_2,int param_3,int *param_4)\n\n{\n  uint ******ppppppuVar1;\n  uint *puVar2;\n  byte bVar3;\n  uint ***pppuVar4;\n  int iVar5;\n  code *pcVar6;\n  char cVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  uint ******ppppppuVar13;\n  uint ****ppppuVar14;\n  uint *****pppppuVar15;\n  undefined *puVar16;\n  uint ******ppppppuVar17;\n  uint *****pppppuVar18;\n  uint *******extraout_ECX;\n  int iVar19;\n  uint *******extraout_ECX_00;\n  uint ******ppppppuVar20;\n  uint *******extraout_ECX_01;\n  uint *******extraout_ECX_02;\n  uint *******extraout_ECX_03;\n  uint *******extraout_ECX_04;\n  uint *******extraout_ECX_05;\n  uint *******extraout_ECX_06;\n  uint *******extraout_ECX_07;\n  uint *******extraout_ECX_08;\n  uint *******extraout_ECX_09;\n  uint *******extraout_ECX_10;\n  uint *******extraout_ECX_11;\n  uint *******extraout_ECX_12;\n  uint *******extraout_ECX_13;\n  uint *******extraout_ECX_14;\n  uint *******extraout_ECX_15;\n  uint *******extraout_ECX_16;\n  uint *******extraout_ECX_17;\n  uint *******extraout_ECX_18;\n  uint *******extraout_ECX_19;\n  uint *******extraout_ECX_20;\n  uint *******extraout_ECX_21;\n  uint *******extraout_ECX_22;\n  uint *******extraout_ECX_23;\n  uint *******extraout_ECX_24;\n  uint *******extraout_ECX_25;\n  uint *******extraout_ECX_26;\n  uint *******extraout_ECX_27;\n  uint *******extraout_ECX_28;\n  uint *******extraout_ECX_29;\n  uint *******extraout_ECX_30;\n  uint *******extraout_ECX_31;\n  uint ******ppppppuVar21;\n  uint *******pppppppuVar22;\n  undefined1 *puVar23;\n  undefined1 *puVar24;\n  undefined1 *puVar26;\n  uint *******pppppppuVar27;\n  uint *******pppppppuVar28;\n  uint *******pppppppuVar29;\n  byte *pbVar30;\n  byte *pbVar31;\n  uint *******pppppppuVar32;\n  bool bVar33;\n  bool bVar34;\n  bool bVar35;\n  byte bVar36;\n  undefined1 auStack_1ac [8];\n  uint *******local_1a4;\n  uint *******local_1a0;\n  int local_19c;\n  uint *******local_198;\n  uint *******local_194;\n  uint *******local_190;\n  uint *******local_18c;\n  uint ******local_188;\n  uint *******local_184;\n  uint ******local_180;\n  uint *******local_17c;\n  uint *******local_178;\n  uint *******local_174;\n  uint *******local_170;\n  uint *******local_16c;\n  uint local_168;\n  uint ******local_164;\n  uint ******local_160;\n  undefined4 *local_15c;\n  undefined4 *local_158;\n  uint *******local_154;\n  uint ******local_150;\n  int local_14c;\n  uint ******local_148;\n  uint ******local_144;\n  uint *******local_140;\n  uint *******local_13c;\n  char local_138;\n  byte local_137;\n  byte local_136;\n  char local_135;\n  uint *******local_134;\n  uint *******local_130;\n  uint *******local_12c;\n  undefined4 local_128;\n  uint *******local_124;\n  uint *******local_120;\n  int *local_11c;\n  undefined4 local_118;\n  int local_110;\n  char local_10c [4];\n  undefined4 local_108;\n  uint *******local_100 [3];\n  undefined1 local_f1;\n  uint *******local_f0;\n  uint *******local_ec;\n  uint *******local_e8;\n  uint ******local_e4;\n  uint *******local_e0;\n  uint *******local_dc;\n  uint *******local_d8;\n  int *local_d4;\n  int *local_d0;\n  int *local_cc;\n  int *local_c8;\n  int *local_c4;\n  int *local_c0;\n  int *local_bc;\n  int *local_b8;\n  int *local_b4;\n  void *local_b0;\n  undefined4 local_ac;\n  void *local_a8;\n  uint local_a4;\n  byte *local_a0;\n  uint *******local_9c;\n  uint *******local_98;\n  uint ******local_94 [4];\n  uint *******local_84;\n  uint *******local_80;\n  uint ******local_7c [4];\n  uint *******local_6c;\n  undefined4 local_68;\n  uint *******local_64;\n  uint ******local_60;\n  uint *******local_5c;\n  uint ******local_58;\n  uint ******local_54;\n  uint ******local_50;\n  uint ******local_4c;\n  uint ******local_48;\n  uint ******local_44;\n  uint ******local_40;\n  uint ******local_3c;\n  uint ******local_38;\n  uint ******local_34;\n  uint ******local_30;\n  uint ******local_2c;\n  uint ******local_28;\n  uint ******local_24;\n  undefined1 *puVar25;\n  \n  bVar36 = 0;\n  local_120 = (uint *******)&__DT_PLTGOT;\n  local_13c = (uint *******)&DAT_00302378;\n  if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    \n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }\n  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);\n  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);\n  local_130 = (uint *******)param_1[10];\n  pppppppuVar22 = (uint *******)&DAT_00302378;\n  pppppppuVar29 = (uint *******)&__DT_PLTGOT;\n  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;\n  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }\nLAB_000a1e71:\n  pppppppuVar29 = local_124;\n  pppppppuVar22 = local_130;\n  ppppuVar14 = pppppuVar15[0x164f];\n  local_124 = (uint *******)((uint)local_124 & 0xffffff00);\n  if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }\n  if ((uint *******)0x3fffffff < local_130) {\n                    \n    FUN_001c5fe0();\n  }\n  local_14c = (int)local_130 * 4;\n  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);\n  iVar19 = local_14c;\n  puVar8 = local_158;\n  if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }\n                    \n  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);\n  puVar24 = auStack_1ac;\n  puVar26 = auStack_1ac;\n  pppppppuVar22 = (uint *******)(local_160 + 0x10);\n  puVar8 = local_15c;\n  local_134 = pppppppuVar22;\n  if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }\n  local_140 = (uint *******)0x0;\nLAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }\n  if (param_1[7] == (uint ******)0x0) {\n                    \n                    \n    FUN_000917c0();\n  }\n                    \n  local_137 = FUN_0005cf90(param_1[7]);\n  if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    \n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }\n  *(undefined4 **)(puVar24 + -0x10) = local_15c;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;\n  FUN_001807a0();\n  *(undefined4 **)(puVar24 + -0x10) = local_158;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;\n  FUN_001807a0();\n  return;\n}" primitive_type (function_declarator "FUN_000a1d70(uint *******param_1,int param_2,int param_3,int *param_4)" identifier (parameter_list "(uint *******param_1,int param_2,int param_3,int *param_4)" ( (parameter_declaration "uint *******param_1" type_identifier (pointer_declarator "*******param_1" * (pointer_declarator "******param_1" * (pointer_declarator "*****param_1" * (pointer_declarator "****param_1" * (pointer_declarator "***param_1" * (pointer_declarator "**param_1" * (pointer_declarator "*param_1" * identifier)))))))) , (parameter_declaration "int param_2" primitive_type identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "int *param_4" primitive_type (pointer_declarator "*param_4" * identifier)) ))) (compound_statement "{\n  uint ******ppppppuVar1;\n  uint *puVar2;\n  byte bVar3;\n  uint ***pppuVar4;\n  int iVar5;\n  code *pcVar6;\n  char cVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  uint ******ppppppuVar13;\n  uint ****ppppuVar14;\n  uint *****pppppuVar15;\n  undefined *puVar16;\n  uint ******ppppppuVar17;\n  uint *****pppppuVar18;\n  uint *******extraout_ECX;\n  int iVar19;\n  uint *******extraout_ECX_00;\n  uint ******ppppppuVar20;\n  uint *******extraout_ECX_01;\n  uint *******extraout_ECX_02;\n  uint *******extraout_ECX_03;\n  uint *******extraout_ECX_04;\n  uint *******extraout_ECX_05;\n  uint *******extraout_ECX_06;\n  uint *******extraout_ECX_07;\n  uint *******extraout_ECX_08;\n  uint *******extraout_ECX_09;\n  uint *******extraout_ECX_10;\n  uint *******extraout_ECX_11;\n  uint *******extraout_ECX_12;\n  uint *******extraout_ECX_13;\n  uint *******extraout_ECX_14;\n  uint *******extraout_ECX_15;\n  uint *******extraout_ECX_16;\n  uint *******extraout_ECX_17;\n  uint *******extraout_ECX_18;\n  uint *******extraout_ECX_19;\n  uint *******extraout_ECX_20;\n  uint *******extraout_ECX_21;\n  uint *******extraout_ECX_22;\n  uint *******extraout_ECX_23;\n  uint *******extraout_ECX_24;\n  uint *******extraout_ECX_25;\n  uint *******extraout_ECX_26;\n  uint *******extraout_ECX_27;\n  uint *******extraout_ECX_28;\n  uint *******extraout_ECX_29;\n  uint *******extraout_ECX_30;\n  uint *******extraout_ECX_31;\n  uint ******ppppppuVar21;\n  uint *******pppppppuVar22;\n  undefined1 *puVar23;\n  undefined1 *puVar24;\n  undefined1 *puVar26;\n  uint *******pppppppuVar27;\n  uint *******pppppppuVar28;\n  uint *******pppppppuVar29;\n  byte *pbVar30;\n  byte *pbVar31;\n  uint *******pppppppuVar32;\n  bool bVar33;\n  bool bVar34;\n  bool bVar35;\n  byte bVar36;\n  undefined1 auStack_1ac [8];\n  uint *******local_1a4;\n  uint *******local_1a0;\n  int local_19c;\n  uint *******local_198;\n  uint *******local_194;\n  uint *******local_190;\n  uint *******local_18c;\n  uint ******local_188;\n  uint *******local_184;\n  uint ******local_180;\n  uint *******local_17c;\n  uint *******local_178;\n  uint *******local_174;\n  uint *******local_170;\n  uint *******local_16c;\n  uint local_168;\n  uint ******local_164;\n  uint ******local_160;\n  undefined4 *local_15c;\n  undefined4 *local_158;\n  uint *******local_154;\n  uint ******local_150;\n  int local_14c;\n  uint ******local_148;\n  uint ******local_144;\n  uint *******local_140;\n  uint *******local_13c;\n  char local_138;\n  byte local_137;\n  byte local_136;\n  char local_135;\n  uint *******local_134;\n  uint *******local_130;\n  uint *******local_12c;\n  undefined4 local_128;\n  uint *******local_124;\n  uint *******local_120;\n  int *local_11c;\n  undefined4 local_118;\n  int local_110;\n  char local_10c [4];\n  undefined4 local_108;\n  uint *******local_100 [3];\n  undefined1 local_f1;\n  uint *******local_f0;\n  uint *******local_ec;\n  uint *******local_e8;\n  uint ******local_e4;\n  uint *******local_e0;\n  uint *******local_dc;\n  uint *******local_d8;\n  int *local_d4;\n  int *local_d0;\n  int *local_cc;\n  int *local_c8;\n  int *local_c4;\n  int *local_c0;\n  int *local_bc;\n  int *local_b8;\n  int *local_b4;\n  void *local_b0;\n  undefined4 local_ac;\n  void *local_a8;\n  uint local_a4;\n  byte *local_a0;\n  uint *******local_9c;\n  uint *******local_98;\n  uint ******local_94 [4];\n  uint *******local_84;\n  uint *******local_80;\n  uint ******local_7c [4];\n  uint *******local_6c;\n  undefined4 local_68;\n  uint *******local_64;\n  uint ******local_60;\n  uint *******local_5c;\n  uint ******local_58;\n  uint ******local_54;\n  uint ******local_50;\n  uint ******local_4c;\n  uint ******local_48;\n  uint ******local_44;\n  uint ******local_40;\n  uint ******local_3c;\n  uint ******local_38;\n  uint ******local_34;\n  uint ******local_30;\n  uint ******local_2c;\n  uint ******local_28;\n  uint ******local_24;\n  undefined1 *puVar25;\n  \n  bVar36 = 0;\n  local_120 = (uint *******)&__DT_PLTGOT;\n  local_13c = (uint *******)&DAT_00302378;\n  if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    \n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }\n  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);\n  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);\n  local_130 = (uint *******)param_1[10];\n  pppppppuVar22 = (uint *******)&DAT_00302378;\n  pppppppuVar29 = (uint *******)&__DT_PLTGOT;\n  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;\n  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }\nLAB_000a1e71:\n  pppppppuVar29 = local_124;\n  pppppppuVar22 = local_130;\n  ppppuVar14 = pppppuVar15[0x164f];\n  local_124 = (uint *******)((uint)local_124 & 0xffffff00);\n  if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }\n  if ((uint *******)0x3fffffff < local_130) {\n                    \n    FUN_001c5fe0();\n  }\n  local_14c = (int)local_130 * 4;\n  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);\n  iVar19 = local_14c;\n  puVar8 = local_158;\n  if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }\n                    \n  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);\n  puVar24 = auStack_1ac;\n  puVar26 = auStack_1ac;\n  pppppppuVar22 = (uint *******)(local_160 + 0x10);\n  puVar8 = local_15c;\n  local_134 = pppppppuVar22;\n  if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }\n  local_140 = (uint *******)0x0;\nLAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }\n  if (param_1[7] == (uint ******)0x0) {\n                    \n                    \n    FUN_000917c0();\n  }\n                    \n  local_137 = FUN_0005cf90(param_1[7]);\n  if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    \n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }\n  *(undefined4 **)(puVar24 + -0x10) = local_15c;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;\n  FUN_001807a0();\n  *(undefined4 **)(puVar24 + -0x10) = local_158;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;\n  FUN_001807a0();\n  return;\n}" { (declaration "uint ******ppppppuVar1;" type_identifier (pointer_declarator "******ppppppuVar1" * (pointer_declarator "*****ppppppuVar1" * (pointer_declarator "****ppppppuVar1" * (pointer_declarator "***ppppppuVar1" * (pointer_declarator "**ppppppuVar1" * (pointer_declarator "*ppppppuVar1" * identifier)))))) ;) (declaration "uint *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "uint ***pppuVar4;" type_identifier (pointer_declarator "***pppuVar4" * (pointer_declarator "**pppuVar4" * (pointer_declarator "*pppuVar4" * identifier))) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "code *pcVar6;" type_identifier (pointer_declarator "*pcVar6" * identifier) ;) (declaration "char cVar7;" primitive_type identifier ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "size_t sVar9;" primitive_type identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "uint ******ppppppuVar13;" type_identifier (pointer_declarator "******ppppppuVar13" * (pointer_declarator "*****ppppppuVar13" * (pointer_declarator "****ppppppuVar13" * (pointer_declarator "***ppppppuVar13" * (pointer_declarator "**ppppppuVar13" * (pointer_declarator "*ppppppuVar13" * identifier)))))) ;) (declaration "uint ****ppppuVar14;" type_identifier (pointer_declarator "****ppppuVar14" * (pointer_declarator "***ppppuVar14" * (pointer_declarator "**ppppuVar14" * (pointer_declarator "*ppppuVar14" * identifier)))) ;) (declaration "uint *****pppppuVar15;" type_identifier (pointer_declarator "*****pppppuVar15" * (pointer_declarator "****pppppuVar15" * (pointer_declarator "***pppppuVar15" * (pointer_declarator "**pppppuVar15" * (pointer_declarator "*pppppuVar15" * identifier))))) ;) (declaration "undefined *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "uint ******ppppppuVar17;" type_identifier (pointer_declarator "******ppppppuVar17" * (pointer_declarator "*****ppppppuVar17" * (pointer_declarator "****ppppppuVar17" * (pointer_declarator "***ppppppuVar17" * (pointer_declarator "**ppppppuVar17" * (pointer_declarator "*ppppppuVar17" * identifier)))))) ;) (declaration "uint *****pppppuVar18;" type_identifier (pointer_declarator "*****pppppuVar18" * (pointer_declarator "****pppppuVar18" * (pointer_declarator "***pppppuVar18" * (pointer_declarator "**pppppuVar18" * (pointer_declarator "*pppppuVar18" * identifier))))) ;) (declaration "uint *******extraout_ECX;" type_identifier (pointer_declarator "*******extraout_ECX" * (pointer_declarator "******extraout_ECX" * (pointer_declarator "*****extraout_ECX" * (pointer_declarator "****extraout_ECX" * (pointer_declarator "***extraout_ECX" * (pointer_declarator "**extraout_ECX" * (pointer_declarator "*extraout_ECX" * identifier))))))) ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "uint *******extraout_ECX_00;" type_identifier (pointer_declarator "*******extraout_ECX_00" * (pointer_declarator "******extraout_ECX_00" * (pointer_declarator "*****extraout_ECX_00" * (pointer_declarator "****extraout_ECX_00" * (pointer_declarator "***extraout_ECX_00" * (pointer_declarator "**extraout_ECX_00" * (pointer_declarator "*extraout_ECX_00" * identifier))))))) ;) (declaration "uint ******ppppppuVar20;" type_identifier (pointer_declarator "******ppppppuVar20" * (pointer_declarator "*****ppppppuVar20" * (pointer_declarator "****ppppppuVar20" * (pointer_declarator "***ppppppuVar20" * (pointer_declarator "**ppppppuVar20" * (pointer_declarator "*ppppppuVar20" * identifier)))))) ;) (declaration "uint *******extraout_ECX_01;" type_identifier (pointer_declarator "*******extraout_ECX_01" * (pointer_declarator "******extraout_ECX_01" * (pointer_declarator "*****extraout_ECX_01" * (pointer_declarator "****extraout_ECX_01" * (pointer_declarator "***extraout_ECX_01" * (pointer_declarator "**extraout_ECX_01" * (pointer_declarator "*extraout_ECX_01" * identifier))))))) ;) (declaration "uint *******extraout_ECX_02;" type_identifier (pointer_declarator "*******extraout_ECX_02" * (pointer_declarator "******extraout_ECX_02" * (pointer_declarator "*****extraout_ECX_02" * (pointer_declarator "****extraout_ECX_02" * (pointer_declarator "***extraout_ECX_02" * (pointer_declarator "**extraout_ECX_02" * (pointer_declarator "*extraout_ECX_02" * identifier))))))) ;) (declaration "uint *******extraout_ECX_03;" type_identifier (pointer_declarator "*******extraout_ECX_03" * (pointer_declarator "******extraout_ECX_03" * (pointer_declarator "*****extraout_ECX_03" * (pointer_declarator "****extraout_ECX_03" * (pointer_declarator "***extraout_ECX_03" * (pointer_declarator "**extraout_ECX_03" * (pointer_declarator "*extraout_ECX_03" * identifier))))))) ;) (declaration "uint *******extraout_ECX_04;" type_identifier (pointer_declarator "*******extraout_ECX_04" * (pointer_declarator "******extraout_ECX_04" * (pointer_declarator "*****extraout_ECX_04" * (pointer_declarator "****extraout_ECX_04" * (pointer_declarator "***extraout_ECX_04" * (pointer_declarator "**extraout_ECX_04" * (pointer_declarator "*extraout_ECX_04" * identifier))))))) ;) (declaration "uint *******extraout_ECX_05;" type_identifier (pointer_declarator "*******extraout_ECX_05" * (pointer_declarator "******extraout_ECX_05" * (pointer_declarator "*****extraout_ECX_05" * (pointer_declarator "****extraout_ECX_05" * (pointer_declarator "***extraout_ECX_05" * (pointer_declarator "**extraout_ECX_05" * (pointer_declarator "*extraout_ECX_05" * identifier))))))) ;) (declaration "uint *******extraout_ECX_06;" type_identifier (pointer_declarator "*******extraout_ECX_06" * (pointer_declarator "******extraout_ECX_06" * (pointer_declarator "*****extraout_ECX_06" * (pointer_declarator "****extraout_ECX_06" * (pointer_declarator "***extraout_ECX_06" * (pointer_declarator "**extraout_ECX_06" * (pointer_declarator "*extraout_ECX_06" * identifier))))))) ;) (declaration "uint *******extraout_ECX_07;" type_identifier (pointer_declarator "*******extraout_ECX_07" * (pointer_declarator "******extraout_ECX_07" * (pointer_declarator "*****extraout_ECX_07" * (pointer_declarator "****extraout_ECX_07" * (pointer_declarator "***extraout_ECX_07" * (pointer_declarator "**extraout_ECX_07" * (pointer_declarator "*extraout_ECX_07" * identifier))))))) ;) (declaration "uint *******extraout_ECX_08;" type_identifier (pointer_declarator "*******extraout_ECX_08" * (pointer_declarator "******extraout_ECX_08" * (pointer_declarator "*****extraout_ECX_08" * (pointer_declarator "****extraout_ECX_08" * (pointer_declarator "***extraout_ECX_08" * (pointer_declarator "**extraout_ECX_08" * (pointer_declarator "*extraout_ECX_08" * identifier))))))) ;) (declaration "uint *******extraout_ECX_09;" type_identifier (pointer_declarator "*******extraout_ECX_09" * (pointer_declarator "******extraout_ECX_09" * (pointer_declarator "*****extraout_ECX_09" * (pointer_declarator "****extraout_ECX_09" * (pointer_declarator "***extraout_ECX_09" * (pointer_declarator "**extraout_ECX_09" * (pointer_declarator "*extraout_ECX_09" * identifier))))))) ;) (declaration "uint *******extraout_ECX_10;" type_identifier (pointer_declarator "*******extraout_ECX_10" * (pointer_declarator "******extraout_ECX_10" * (pointer_declarator "*****extraout_ECX_10" * (pointer_declarator "****extraout_ECX_10" * (pointer_declarator "***extraout_ECX_10" * (pointer_declarator "**extraout_ECX_10" * (pointer_declarator "*extraout_ECX_10" * identifier))))))) ;) (declaration "uint *******extraout_ECX_11;" type_identifier (pointer_declarator "*******extraout_ECX_11" * (pointer_declarator "******extraout_ECX_11" * (pointer_declarator "*****extraout_ECX_11" * (pointer_declarator "****extraout_ECX_11" * (pointer_declarator "***extraout_ECX_11" * (pointer_declarator "**extraout_ECX_11" * (pointer_declarator "*extraout_ECX_11" * identifier))))))) ;) (declaration "uint *******extraout_ECX_12;" type_identifier (pointer_declarator "*******extraout_ECX_12" * (pointer_declarator "******extraout_ECX_12" * (pointer_declarator "*****extraout_ECX_12" * (pointer_declarator "****extraout_ECX_12" * (pointer_declarator "***extraout_ECX_12" * (pointer_declarator "**extraout_ECX_12" * (pointer_declarator "*extraout_ECX_12" * identifier))))))) ;) (declaration "uint *******extraout_ECX_13;" type_identifier (pointer_declarator "*******extraout_ECX_13" * (pointer_declarator "******extraout_ECX_13" * (pointer_declarator "*****extraout_ECX_13" * (pointer_declarator "****extraout_ECX_13" * (pointer_declarator "***extraout_ECX_13" * (pointer_declarator "**extraout_ECX_13" * (pointer_declarator "*extraout_ECX_13" * identifier))))))) ;) (declaration "uint *******extraout_ECX_14;" type_identifier (pointer_declarator "*******extraout_ECX_14" * (pointer_declarator "******extraout_ECX_14" * (pointer_declarator "*****extraout_ECX_14" * (pointer_declarator "****extraout_ECX_14" * (pointer_declarator "***extraout_ECX_14" * (pointer_declarator "**extraout_ECX_14" * (pointer_declarator "*extraout_ECX_14" * identifier))))))) ;) (declaration "uint *******extraout_ECX_15;" type_identifier (pointer_declarator "*******extraout_ECX_15" * (pointer_declarator "******extraout_ECX_15" * (pointer_declarator "*****extraout_ECX_15" * (pointer_declarator "****extraout_ECX_15" * (pointer_declarator "***extraout_ECX_15" * (pointer_declarator "**extraout_ECX_15" * (pointer_declarator "*extraout_ECX_15" * identifier))))))) ;) (declaration "uint *******extraout_ECX_16;" type_identifier (pointer_declarator "*******extraout_ECX_16" * (pointer_declarator "******extraout_ECX_16" * (pointer_declarator "*****extraout_ECX_16" * (pointer_declarator "****extraout_ECX_16" * (pointer_declarator "***extraout_ECX_16" * (pointer_declarator "**extraout_ECX_16" * (pointer_declarator "*extraout_ECX_16" * identifier))))))) ;) (declaration "uint *******extraout_ECX_17;" type_identifier (pointer_declarator "*******extraout_ECX_17" * (pointer_declarator "******extraout_ECX_17" * (pointer_declarator "*****extraout_ECX_17" * (pointer_declarator "****extraout_ECX_17" * (pointer_declarator "***extraout_ECX_17" * (pointer_declarator "**extraout_ECX_17" * (pointer_declarator "*extraout_ECX_17" * identifier))))))) ;) (declaration "uint *******extraout_ECX_18;" type_identifier (pointer_declarator "*******extraout_ECX_18" * (pointer_declarator "******extraout_ECX_18" * (pointer_declarator "*****extraout_ECX_18" * (pointer_declarator "****extraout_ECX_18" * (pointer_declarator "***extraout_ECX_18" * (pointer_declarator "**extraout_ECX_18" * (pointer_declarator "*extraout_ECX_18" * identifier))))))) ;) (declaration "uint *******extraout_ECX_19;" type_identifier (pointer_declarator "*******extraout_ECX_19" * (pointer_declarator "******extraout_ECX_19" * (pointer_declarator "*****extraout_ECX_19" * (pointer_declarator "****extraout_ECX_19" * (pointer_declarator "***extraout_ECX_19" * (pointer_declarator "**extraout_ECX_19" * (pointer_declarator "*extraout_ECX_19" * identifier))))))) ;) (declaration "uint *******extraout_ECX_20;" type_identifier (pointer_declarator "*******extraout_ECX_20" * (pointer_declarator "******extraout_ECX_20" * (pointer_declarator "*****extraout_ECX_20" * (pointer_declarator "****extraout_ECX_20" * (pointer_declarator "***extraout_ECX_20" * (pointer_declarator "**extraout_ECX_20" * (pointer_declarator "*extraout_ECX_20" * identifier))))))) ;) (declaration "uint *******extraout_ECX_21;" type_identifier (pointer_declarator "*******extraout_ECX_21" * (pointer_declarator "******extraout_ECX_21" * (pointer_declarator "*****extraout_ECX_21" * (pointer_declarator "****extraout_ECX_21" * (pointer_declarator "***extraout_ECX_21" * (pointer_declarator "**extraout_ECX_21" * (pointer_declarator "*extraout_ECX_21" * identifier))))))) ;) (declaration "uint *******extraout_ECX_22;" type_identifier (pointer_declarator "*******extraout_ECX_22" * (pointer_declarator "******extraout_ECX_22" * (pointer_declarator "*****extraout_ECX_22" * (pointer_declarator "****extraout_ECX_22" * (pointer_declarator "***extraout_ECX_22" * (pointer_declarator "**extraout_ECX_22" * (pointer_declarator "*extraout_ECX_22" * identifier))))))) ;) (declaration "uint *******extraout_ECX_23;" type_identifier (pointer_declarator "*******extraout_ECX_23" * (pointer_declarator "******extraout_ECX_23" * (pointer_declarator "*****extraout_ECX_23" * (pointer_declarator "****extraout_ECX_23" * (pointer_declarator "***extraout_ECX_23" * (pointer_declarator "**extraout_ECX_23" * (pointer_declarator "*extraout_ECX_23" * identifier))))))) ;) (declaration "uint *******extraout_ECX_24;" type_identifier (pointer_declarator "*******extraout_ECX_24" * (pointer_declarator "******extraout_ECX_24" * (pointer_declarator "*****extraout_ECX_24" * (pointer_declarator "****extraout_ECX_24" * (pointer_declarator "***extraout_ECX_24" * (pointer_declarator "**extraout_ECX_24" * (pointer_declarator "*extraout_ECX_24" * identifier))))))) ;) (declaration "uint *******extraout_ECX_25;" type_identifier (pointer_declarator "*******extraout_ECX_25" * (pointer_declarator "******extraout_ECX_25" * (pointer_declarator "*****extraout_ECX_25" * (pointer_declarator "****extraout_ECX_25" * (pointer_declarator "***extraout_ECX_25" * (pointer_declarator "**extraout_ECX_25" * (pointer_declarator "*extraout_ECX_25" * identifier))))))) ;) (declaration "uint *******extraout_ECX_26;" type_identifier (pointer_declarator "*******extraout_ECX_26" * (pointer_declarator "******extraout_ECX_26" * (pointer_declarator "*****extraout_ECX_26" * (pointer_declarator "****extraout_ECX_26" * (pointer_declarator "***extraout_ECX_26" * (pointer_declarator "**extraout_ECX_26" * (pointer_declarator "*extraout_ECX_26" * identifier))))))) ;) (declaration "uint *******extraout_ECX_27;" type_identifier (pointer_declarator "*******extraout_ECX_27" * (pointer_declarator "******extraout_ECX_27" * (pointer_declarator "*****extraout_ECX_27" * (pointer_declarator "****extraout_ECX_27" * (pointer_declarator "***extraout_ECX_27" * (pointer_declarator "**extraout_ECX_27" * (pointer_declarator "*extraout_ECX_27" * identifier))))))) ;) (declaration "uint *******extraout_ECX_28;" type_identifier (pointer_declarator "*******extraout_ECX_28" * (pointer_declarator "******extraout_ECX_28" * (pointer_declarator "*****extraout_ECX_28" * (pointer_declarator "****extraout_ECX_28" * (pointer_declarator "***extraout_ECX_28" * (pointer_declarator "**extraout_ECX_28" * (pointer_declarator "*extraout_ECX_28" * identifier))))))) ;) (declaration "uint *******extraout_ECX_29;" type_identifier (pointer_declarator "*******extraout_ECX_29" * (pointer_declarator "******extraout_ECX_29" * (pointer_declarator "*****extraout_ECX_29" * (pointer_declarator "****extraout_ECX_29" * (pointer_declarator "***extraout_ECX_29" * (pointer_declarator "**extraout_ECX_29" * (pointer_declarator "*extraout_ECX_29" * identifier))))))) ;) (declaration "uint *******extraout_ECX_30;" type_identifier (pointer_declarator "*******extraout_ECX_30" * (pointer_declarator "******extraout_ECX_30" * (pointer_declarator "*****extraout_ECX_30" * (pointer_declarator "****extraout_ECX_30" * (pointer_declarator "***extraout_ECX_30" * (pointer_declarator "**extraout_ECX_30" * (pointer_declarator "*extraout_ECX_30" * identifier))))))) ;) (declaration "uint *******extraout_ECX_31;" type_identifier (pointer_declarator "*******extraout_ECX_31" * (pointer_declarator "******extraout_ECX_31" * (pointer_declarator "*****extraout_ECX_31" * (pointer_declarator "****extraout_ECX_31" * (pointer_declarator "***extraout_ECX_31" * (pointer_declarator "**extraout_ECX_31" * (pointer_declarator "*extraout_ECX_31" * identifier))))))) ;) (declaration "uint ******ppppppuVar21;" type_identifier (pointer_declarator "******ppppppuVar21" * (pointer_declarator "*****ppppppuVar21" * (pointer_declarator "****ppppppuVar21" * (pointer_declarator "***ppppppuVar21" * (pointer_declarator "**ppppppuVar21" * (pointer_declarator "*ppppppuVar21" * identifier)))))) ;) (declaration "uint *******pppppppuVar22;" type_identifier (pointer_declarator "*******pppppppuVar22" * (pointer_declarator "******pppppppuVar22" * (pointer_declarator "*****pppppppuVar22" * (pointer_declarator "****pppppppuVar22" * (pointer_declarator "***pppppppuVar22" * (pointer_declarator "**pppppppuVar22" * (pointer_declarator "*pppppppuVar22" * identifier))))))) ;) (declaration "undefined1 *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "undefined1 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "undefined1 *puVar26;" type_identifier (pointer_declarator "*puVar26" * identifier) ;) (declaration "uint *******pppppppuVar27;" type_identifier (pointer_declarator "*******pppppppuVar27" * (pointer_declarator "******pppppppuVar27" * (pointer_declarator "*****pppppppuVar27" * (pointer_declarator "****pppppppuVar27" * (pointer_declarator "***pppppppuVar27" * (pointer_declarator "**pppppppuVar27" * (pointer_declarator "*pppppppuVar27" * identifier))))))) ;) (declaration "uint *******pppppppuVar28;" type_identifier (pointer_declarator "*******pppppppuVar28" * (pointer_declarator "******pppppppuVar28" * (pointer_declarator "*****pppppppuVar28" * (pointer_declarator "****pppppppuVar28" * (pointer_declarator "***pppppppuVar28" * (pointer_declarator "**pppppppuVar28" * (pointer_declarator "*pppppppuVar28" * identifier))))))) ;) (declaration "uint *******pppppppuVar29;" type_identifier (pointer_declarator "*******pppppppuVar29" * (pointer_declarator "******pppppppuVar29" * (pointer_declarator "*****pppppppuVar29" * (pointer_declarator "****pppppppuVar29" * (pointer_declarator "***pppppppuVar29" * (pointer_declarator "**pppppppuVar29" * (pointer_declarator "*pppppppuVar29" * identifier))))))) ;) (declaration "byte *pbVar30;" type_identifier (pointer_declarator "*pbVar30" * identifier) ;) (declaration "byte *pbVar31;" type_identifier (pointer_declarator "*pbVar31" * identifier) ;) (declaration "uint *******pppppppuVar32;" type_identifier (pointer_declarator "*******pppppppuVar32" * (pointer_declarator "******pppppppuVar32" * (pointer_declarator "*****pppppppuVar32" * (pointer_declarator "****pppppppuVar32" * (pointer_declarator "***pppppppuVar32" * (pointer_declarator "**pppppppuVar32" * (pointer_declarator "*pppppppuVar32" * identifier))))))) ;) (declaration "bool bVar33;" primitive_type identifier ;) (declaration "bool bVar34;" primitive_type identifier ;) (declaration "bool bVar35;" primitive_type identifier ;) (declaration "byte bVar36;" type_identifier identifier ;) (declaration "undefined1 auStack_1ac [8];" type_identifier (array_declarator "auStack_1ac [8]" identifier [ number_literal ]) ;) (declaration "uint *******local_1a4;" type_identifier (pointer_declarator "*******local_1a4" * (pointer_declarator "******local_1a4" * (pointer_declarator "*****local_1a4" * (pointer_declarator "****local_1a4" * (pointer_declarator "***local_1a4" * (pointer_declarator "**local_1a4" * (pointer_declarator "*local_1a4" * identifier))))))) ;) (declaration "uint *******local_1a0;" type_identifier (pointer_declarator "*******local_1a0" * (pointer_declarator "******local_1a0" * (pointer_declarator "*****local_1a0" * (pointer_declarator "****local_1a0" * (pointer_declarator "***local_1a0" * (pointer_declarator "**local_1a0" * (pointer_declarator "*local_1a0" * identifier))))))) ;) (declaration "int local_19c;" primitive_type identifier ;) (declaration "uint *******local_198;" type_identifier (pointer_declarator "*******local_198" * (pointer_declarator "******local_198" * (pointer_declarator "*****local_198" * (pointer_declarator "****local_198" * (pointer_declarator "***local_198" * (pointer_declarator "**local_198" * (pointer_declarator "*local_198" * identifier))))))) ;) (declaration "uint *******local_194;" type_identifier (pointer_declarator "*******local_194" * (pointer_declarator "******local_194" * (pointer_declarator "*****local_194" * (pointer_declarator "****local_194" * (pointer_declarator "***local_194" * (pointer_declarator "**local_194" * (pointer_declarator "*local_194" * identifier))))))) ;) (declaration "uint *******local_190;" type_identifier (pointer_declarator "*******local_190" * (pointer_declarator "******local_190" * (pointer_declarator "*****local_190" * (pointer_declarator "****local_190" * (pointer_declarator "***local_190" * (pointer_declarator "**local_190" * (pointer_declarator "*local_190" * identifier))))))) ;) (declaration "uint *******local_18c;" type_identifier (pointer_declarator "*******local_18c" * (pointer_declarator "******local_18c" * (pointer_declarator "*****local_18c" * (pointer_declarator "****local_18c" * (pointer_declarator "***local_18c" * (pointer_declarator "**local_18c" * (pointer_declarator "*local_18c" * identifier))))))) ;) (declaration "uint ******local_188;" type_identifier (pointer_declarator "******local_188" * (pointer_declarator "*****local_188" * (pointer_declarator "****local_188" * (pointer_declarator "***local_188" * (pointer_declarator "**local_188" * (pointer_declarator "*local_188" * identifier)))))) ;) (declaration "uint *******local_184;" type_identifier (pointer_declarator "*******local_184" * (pointer_declarator "******local_184" * (pointer_declarator "*****local_184" * (pointer_declarator "****local_184" * (pointer_declarator "***local_184" * (pointer_declarator "**local_184" * (pointer_declarator "*local_184" * identifier))))))) ;) (declaration "uint ******local_180;" type_identifier (pointer_declarator "******local_180" * (pointer_declarator "*****local_180" * (pointer_declarator "****local_180" * (pointer_declarator "***local_180" * (pointer_declarator "**local_180" * (pointer_declarator "*local_180" * identifier)))))) ;) (declaration "uint *******local_17c;" type_identifier (pointer_declarator "*******local_17c" * (pointer_declarator "******local_17c" * (pointer_declarator "*****local_17c" * (pointer_declarator "****local_17c" * (pointer_declarator "***local_17c" * (pointer_declarator "**local_17c" * (pointer_declarator "*local_17c" * identifier))))))) ;) (declaration "uint *******local_178;" type_identifier (pointer_declarator "*******local_178" * (pointer_declarator "******local_178" * (pointer_declarator "*****local_178" * (pointer_declarator "****local_178" * (pointer_declarator "***local_178" * (pointer_declarator "**local_178" * (pointer_declarator "*local_178" * identifier))))))) ;) (declaration "uint *******local_174;" type_identifier (pointer_declarator "*******local_174" * (pointer_declarator "******local_174" * (pointer_declarator "*****local_174" * (pointer_declarator "****local_174" * (pointer_declarator "***local_174" * (pointer_declarator "**local_174" * (pointer_declarator "*local_174" * identifier))))))) ;) (declaration "uint *******local_170;" type_identifier (pointer_declarator "*******local_170" * (pointer_declarator "******local_170" * (pointer_declarator "*****local_170" * (pointer_declarator "****local_170" * (pointer_declarator "***local_170" * (pointer_declarator "**local_170" * (pointer_declarator "*local_170" * identifier))))))) ;) (declaration "uint *******local_16c;" type_identifier (pointer_declarator "*******local_16c" * (pointer_declarator "******local_16c" * (pointer_declarator "*****local_16c" * (pointer_declarator "****local_16c" * (pointer_declarator "***local_16c" * (pointer_declarator "**local_16c" * (pointer_declarator "*local_16c" * identifier))))))) ;) (declaration "uint local_168;" type_identifier identifier ;) (declaration "uint ******local_164;" type_identifier (pointer_declarator "******local_164" * (pointer_declarator "*****local_164" * (pointer_declarator "****local_164" * (pointer_declarator "***local_164" * (pointer_declarator "**local_164" * (pointer_declarator "*local_164" * identifier)))))) ;) (declaration "uint ******local_160;" type_identifier (pointer_declarator "******local_160" * (pointer_declarator "*****local_160" * (pointer_declarator "****local_160" * (pointer_declarator "***local_160" * (pointer_declarator "**local_160" * (pointer_declarator "*local_160" * identifier)))))) ;) (declaration "undefined4 *local_15c;" type_identifier (pointer_declarator "*local_15c" * identifier) ;) (declaration "undefined4 *local_158;" type_identifier (pointer_declarator "*local_158" * identifier) ;) (declaration "uint *******local_154;" type_identifier (pointer_declarator "*******local_154" * (pointer_declarator "******local_154" * (pointer_declarator "*****local_154" * (pointer_declarator "****local_154" * (pointer_declarator "***local_154" * (pointer_declarator "**local_154" * (pointer_declarator "*local_154" * identifier))))))) ;) (declaration "uint ******local_150;" type_identifier (pointer_declarator "******local_150" * (pointer_declarator "*****local_150" * (pointer_declarator "****local_150" * (pointer_declarator "***local_150" * (pointer_declarator "**local_150" * (pointer_declarator "*local_150" * identifier)))))) ;) (declaration "int local_14c;" primitive_type identifier ;) (declaration "uint ******local_148;" type_identifier (pointer_declarator "******local_148" * (pointer_declarator "*****local_148" * (pointer_declarator "****local_148" * (pointer_declarator "***local_148" * (pointer_declarator "**local_148" * (pointer_declarator "*local_148" * identifier)))))) ;) (declaration "uint ******local_144;" type_identifier (pointer_declarator "******local_144" * (pointer_declarator "*****local_144" * (pointer_declarator "****local_144" * (pointer_declarator "***local_144" * (pointer_declarator "**local_144" * (pointer_declarator "*local_144" * identifier)))))) ;) (declaration "uint *******local_140;" type_identifier (pointer_declarator "*******local_140" * (pointer_declarator "******local_140" * (pointer_declarator "*****local_140" * (pointer_declarator "****local_140" * (pointer_declarator "***local_140" * (pointer_declarator "**local_140" * (pointer_declarator "*local_140" * identifier))))))) ;) (declaration "uint *******local_13c;" type_identifier (pointer_declarator "*******local_13c" * (pointer_declarator "******local_13c" * (pointer_declarator "*****local_13c" * (pointer_declarator "****local_13c" * (pointer_declarator "***local_13c" * (pointer_declarator "**local_13c" * (pointer_declarator "*local_13c" * identifier))))))) ;) (declaration "char local_138;" primitive_type identifier ;) (declaration "byte local_137;" type_identifier identifier ;) (declaration "byte local_136;" type_identifier identifier ;) (declaration "char local_135;" primitive_type identifier ;) (declaration "uint *******local_134;" type_identifier (pointer_declarator "*******local_134" * (pointer_declarator "******local_134" * (pointer_declarator "*****local_134" * (pointer_declarator "****local_134" * (pointer_declarator "***local_134" * (pointer_declarator "**local_134" * (pointer_declarator "*local_134" * identifier))))))) ;) (declaration "uint *******local_130;" type_identifier (pointer_declarator "*******local_130" * (pointer_declarator "******local_130" * (pointer_declarator "*****local_130" * (pointer_declarator "****local_130" * (pointer_declarator "***local_130" * (pointer_declarator "**local_130" * (pointer_declarator "*local_130" * identifier))))))) ;) (declaration "uint *******local_12c;" type_identifier (pointer_declarator "*******local_12c" * (pointer_declarator "******local_12c" * (pointer_declarator "*****local_12c" * (pointer_declarator "****local_12c" * (pointer_declarator "***local_12c" * (pointer_declarator "**local_12c" * (pointer_declarator "*local_12c" * identifier))))))) ;) (declaration "undefined4 local_128;" type_identifier identifier ;) (declaration "uint *******local_124;" type_identifier (pointer_declarator "*******local_124" * (pointer_declarator "******local_124" * (pointer_declarator "*****local_124" * (pointer_declarator "****local_124" * (pointer_declarator "***local_124" * (pointer_declarator "**local_124" * (pointer_declarator "*local_124" * identifier))))))) ;) (declaration "uint *******local_120;" type_identifier (pointer_declarator "*******local_120" * (pointer_declarator "******local_120" * (pointer_declarator "*****local_120" * (pointer_declarator "****local_120" * (pointer_declarator "***local_120" * (pointer_declarator "**local_120" * (pointer_declarator "*local_120" * identifier))))))) ;) (declaration "int *local_11c;" primitive_type (pointer_declarator "*local_11c" * identifier) ;) (declaration "undefined4 local_118;" type_identifier identifier ;) (declaration "int local_110;" primitive_type identifier ;) (declaration "char local_10c [4];" primitive_type (array_declarator "local_10c [4]" identifier [ number_literal ]) ;) (declaration "undefined4 local_108;" type_identifier identifier ;) (declaration "uint *******local_100 [3];" type_identifier (pointer_declarator "*******local_100 [3]" * (pointer_declarator "******local_100 [3]" * (pointer_declarator "*****local_100 [3]" * (pointer_declarator "****local_100 [3]" * (pointer_declarator "***local_100 [3]" * (pointer_declarator "**local_100 [3]" * (pointer_declarator "*local_100 [3]" * (array_declarator "local_100 [3]" identifier [ number_literal ])))))))) ;) (declaration "undefined1 local_f1;" type_identifier identifier ;) (declaration "uint *******local_f0;" type_identifier (pointer_declarator "*******local_f0" * (pointer_declarator "******local_f0" * (pointer_declarator "*****local_f0" * (pointer_declarator "****local_f0" * (pointer_declarator "***local_f0" * (pointer_declarator "**local_f0" * (pointer_declarator "*local_f0" * identifier))))))) ;) (declaration "uint *******local_ec;" type_identifier (pointer_declarator "*******local_ec" * (pointer_declarator "******local_ec" * (pointer_declarator "*****local_ec" * (pointer_declarator "****local_ec" * (pointer_declarator "***local_ec" * (pointer_declarator "**local_ec" * (pointer_declarator "*local_ec" * identifier))))))) ;) (declaration "uint *******local_e8;" type_identifier (pointer_declarator "*******local_e8" * (pointer_declarator "******local_e8" * (pointer_declarator "*****local_e8" * (pointer_declarator "****local_e8" * (pointer_declarator "***local_e8" * (pointer_declarator "**local_e8" * (pointer_declarator "*local_e8" * identifier))))))) ;) (declaration "uint ******local_e4;" type_identifier (pointer_declarator "******local_e4" * (pointer_declarator "*****local_e4" * (pointer_declarator "****local_e4" * (pointer_declarator "***local_e4" * (pointer_declarator "**local_e4" * (pointer_declarator "*local_e4" * identifier)))))) ;) (declaration "uint *******local_e0;" type_identifier (pointer_declarator "*******local_e0" * (pointer_declarator "******local_e0" * (pointer_declarator "*****local_e0" * (pointer_declarator "****local_e0" * (pointer_declarator "***local_e0" * (pointer_declarator "**local_e0" * (pointer_declarator "*local_e0" * identifier))))))) ;) (declaration "uint *******local_dc;" type_identifier (pointer_declarator "*******local_dc" * (pointer_declarator "******local_dc" * (pointer_declarator "*****local_dc" * (pointer_declarator "****local_dc" * (pointer_declarator "***local_dc" * (pointer_declarator "**local_dc" * (pointer_declarator "*local_dc" * identifier))))))) ;) (declaration "uint *******local_d8;" type_identifier (pointer_declarator "*******local_d8" * (pointer_declarator "******local_d8" * (pointer_declarator "*****local_d8" * (pointer_declarator "****local_d8" * (pointer_declarator "***local_d8" * (pointer_declarator "**local_d8" * (pointer_declarator "*local_d8" * identifier))))))) ;) (declaration "int *local_d4;" primitive_type (pointer_declarator "*local_d4" * identifier) ;) (declaration "int *local_d0;" primitive_type (pointer_declarator "*local_d0" * identifier) ;) (declaration "int *local_cc;" primitive_type (pointer_declarator "*local_cc" * identifier) ;) (declaration "int *local_c8;" primitive_type (pointer_declarator "*local_c8" * identifier) ;) (declaration "int *local_c4;" primitive_type (pointer_declarator "*local_c4" * identifier) ;) (declaration "int *local_c0;" primitive_type (pointer_declarator "*local_c0" * identifier) ;) (declaration "int *local_bc;" primitive_type (pointer_declarator "*local_bc" * identifier) ;) (declaration "int *local_b8;" primitive_type (pointer_declarator "*local_b8" * identifier) ;) (declaration "int *local_b4;" primitive_type (pointer_declarator "*local_b4" * identifier) ;) (declaration "void *local_b0;" primitive_type (pointer_declarator "*local_b0" * identifier) ;) (declaration "undefined4 local_ac;" type_identifier identifier ;) (declaration "void *local_a8;" primitive_type (pointer_declarator "*local_a8" * identifier) ;) (declaration "uint local_a4;" type_identifier identifier ;) (declaration "byte *local_a0;" type_identifier (pointer_declarator "*local_a0" * identifier) ;) (declaration "uint *******local_9c;" type_identifier (pointer_declarator "*******local_9c" * (pointer_declarator "******local_9c" * (pointer_declarator "*****local_9c" * (pointer_declarator "****local_9c" * (pointer_declarator "***local_9c" * (pointer_declarator "**local_9c" * (pointer_declarator "*local_9c" * identifier))))))) ;) (declaration "uint *******local_98;" type_identifier (pointer_declarator "*******local_98" * (pointer_declarator "******local_98" * (pointer_declarator "*****local_98" * (pointer_declarator "****local_98" * (pointer_declarator "***local_98" * (pointer_declarator "**local_98" * (pointer_declarator "*local_98" * identifier))))))) ;) (declaration "uint ******local_94 [4];" type_identifier (pointer_declarator "******local_94 [4]" * (pointer_declarator "*****local_94 [4]" * (pointer_declarator "****local_94 [4]" * (pointer_declarator "***local_94 [4]" * (pointer_declarator "**local_94 [4]" * (pointer_declarator "*local_94 [4]" * (array_declarator "local_94 [4]" identifier [ number_literal ]))))))) ;) (declaration "uint *******local_84;" type_identifier (pointer_declarator "*******local_84" * (pointer_declarator "******local_84" * (pointer_declarator "*****local_84" * (pointer_declarator "****local_84" * (pointer_declarator "***local_84" * (pointer_declarator "**local_84" * (pointer_declarator "*local_84" * identifier))))))) ;) (declaration "uint *******local_80;" type_identifier (pointer_declarator "*******local_80" * (pointer_declarator "******local_80" * (pointer_declarator "*****local_80" * (pointer_declarator "****local_80" * (pointer_declarator "***local_80" * (pointer_declarator "**local_80" * (pointer_declarator "*local_80" * identifier))))))) ;) (declaration "uint ******local_7c [4];" type_identifier (pointer_declarator "******local_7c [4]" * (pointer_declarator "*****local_7c [4]" * (pointer_declarator "****local_7c [4]" * (pointer_declarator "***local_7c [4]" * (pointer_declarator "**local_7c [4]" * (pointer_declarator "*local_7c [4]" * (array_declarator "local_7c [4]" identifier [ number_literal ]))))))) ;) (declaration "uint *******local_6c;" type_identifier (pointer_declarator "*******local_6c" * (pointer_declarator "******local_6c" * (pointer_declarator "*****local_6c" * (pointer_declarator "****local_6c" * (pointer_declarator "***local_6c" * (pointer_declarator "**local_6c" * (pointer_declarator "*local_6c" * identifier))))))) ;) (declaration "undefined4 local_68;" type_identifier identifier ;) (declaration "uint *******local_64;" type_identifier (pointer_declarator "*******local_64" * (pointer_declarator "******local_64" * (pointer_declarator "*****local_64" * (pointer_declarator "****local_64" * (pointer_declarator "***local_64" * (pointer_declarator "**local_64" * (pointer_declarator "*local_64" * identifier))))))) ;) (declaration "uint ******local_60;" type_identifier (pointer_declarator "******local_60" * (pointer_declarator "*****local_60" * (pointer_declarator "****local_60" * (pointer_declarator "***local_60" * (pointer_declarator "**local_60" * (pointer_declarator "*local_60" * identifier)))))) ;) (declaration "uint *******local_5c;" type_identifier (pointer_declarator "*******local_5c" * (pointer_declarator "******local_5c" * (pointer_declarator "*****local_5c" * (pointer_declarator "****local_5c" * (pointer_declarator "***local_5c" * (pointer_declarator "**local_5c" * (pointer_declarator "*local_5c" * identifier))))))) ;) (declaration "uint ******local_58;" type_identifier (pointer_declarator "******local_58" * (pointer_declarator "*****local_58" * (pointer_declarator "****local_58" * (pointer_declarator "***local_58" * (pointer_declarator "**local_58" * (pointer_declarator "*local_58" * identifier)))))) ;) (declaration "uint ******local_54;" type_identifier (pointer_declarator "******local_54" * (pointer_declarator "*****local_54" * (pointer_declarator "****local_54" * (pointer_declarator "***local_54" * (pointer_declarator "**local_54" * (pointer_declarator "*local_54" * identifier)))))) ;) (declaration "uint ******local_50;" type_identifier (pointer_declarator "******local_50" * (pointer_declarator "*****local_50" * (pointer_declarator "****local_50" * (pointer_declarator "***local_50" * (pointer_declarator "**local_50" * (pointer_declarator "*local_50" * identifier)))))) ;) (declaration "uint ******local_4c;" type_identifier (pointer_declarator "******local_4c" * (pointer_declarator "*****local_4c" * (pointer_declarator "****local_4c" * (pointer_declarator "***local_4c" * (pointer_declarator "**local_4c" * (pointer_declarator "*local_4c" * identifier)))))) ;) (declaration "uint ******local_48;" type_identifier (pointer_declarator "******local_48" * (pointer_declarator "*****local_48" * (pointer_declarator "****local_48" * (pointer_declarator "***local_48" * (pointer_declarator "**local_48" * (pointer_declarator "*local_48" * identifier)))))) ;) (declaration "uint ******local_44;" type_identifier (pointer_declarator "******local_44" * (pointer_declarator "*****local_44" * (pointer_declarator "****local_44" * (pointer_declarator "***local_44" * (pointer_declarator "**local_44" * (pointer_declarator "*local_44" * identifier)))))) ;) (declaration "uint ******local_40;" type_identifier (pointer_declarator "******local_40" * (pointer_declarator "*****local_40" * (pointer_declarator "****local_40" * (pointer_declarator "***local_40" * (pointer_declarator "**local_40" * (pointer_declarator "*local_40" * identifier)))))) ;) (declaration "uint ******local_3c;" type_identifier (pointer_declarator "******local_3c" * (pointer_declarator "*****local_3c" * (pointer_declarator "****local_3c" * (pointer_declarator "***local_3c" * (pointer_declarator "**local_3c" * (pointer_declarator "*local_3c" * identifier)))))) ;) (declaration "uint ******local_38;" type_identifier (pointer_declarator "******local_38" * (pointer_declarator "*****local_38" * (pointer_declarator "****local_38" * (pointer_declarator "***local_38" * (pointer_declarator "**local_38" * (pointer_declarator "*local_38" * identifier)))))) ;) (declaration "uint ******local_34;" type_identifier (pointer_declarator "******local_34" * (pointer_declarator "*****local_34" * (pointer_declarator "****local_34" * (pointer_declarator "***local_34" * (pointer_declarator "**local_34" * (pointer_declarator "*local_34" * identifier)))))) ;) (declaration "uint ******local_30;" type_identifier (pointer_declarator "******local_30" * (pointer_declarator "*****local_30" * (pointer_declarator "****local_30" * (pointer_declarator "***local_30" * (pointer_declarator "**local_30" * (pointer_declarator "*local_30" * identifier)))))) ;) (declaration "uint ******local_2c;" type_identifier (pointer_declarator "******local_2c" * (pointer_declarator "*****local_2c" * (pointer_declarator "****local_2c" * (pointer_declarator "***local_2c" * (pointer_declarator "**local_2c" * (pointer_declarator "*local_2c" * identifier)))))) ;) (declaration "uint ******local_28;" type_identifier (pointer_declarator "******local_28" * (pointer_declarator "*****local_28" * (pointer_declarator "****local_28" * (pointer_declarator "***local_28" * (pointer_declarator "**local_28" * (pointer_declarator "*local_28" * identifier)))))) ;) (declaration "uint ******local_24;" type_identifier (pointer_declarator "******local_24" * (pointer_declarator "*****local_24" * (pointer_declarator "****local_24" * (pointer_declarator "***local_24" * (pointer_declarator "**local_24" * (pointer_declarator "*local_24" * identifier)))))) ;) (declaration "undefined1 *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (expression_statement "bVar36 = 0;" (assignment_expression "bVar36 = 0" identifier = number_literal) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (if_statement "if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    \n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }" if (parenthesized_expression "(*(int *)(DAT_00302378 + 0xc) == 0)" ( (binary_expression "*(int *)(DAT_00302378 + 0xc) == 0" (pointer_expression "*(int *)(DAT_00302378 + 0xc)" * (cast_expression "(int *)(DAT_00302378 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00302378 + 0xc)" ( (binary_expression "DAT_00302378 + 0xc" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    \n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }" { (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (expression_statement "FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);" (call_expression "FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378)" identifier (argument_list "("../../gold/parameters.h",0x69,"target",DAT_00302378)" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""target"" " string_content ") , identifier ))) ;) })) (expression_statement "pppppuVar15 = *(uint ******)(DAT_00302378 + 8);" (assignment_expression "pppppuVar15 = *(uint ******)(DAT_00302378 + 8)" identifier = (pointer_expression "*(uint ******)(DAT_00302378 + 8)" * (cast_expression "(uint ******)(DAT_00302378 + 8)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(DAT_00302378 + 8)" ( (binary_expression "DAT_00302378 + 8" identifier + number_literal) ))))) ;) (expression_statement "local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);" (assignment_expression "local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" identifier = (pointer_expression "*(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" * (cast_expression "(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" ( (binary_expression "*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60" (pointer_expression "*(int *)(*(int *)(DAT_00302378 + 0xc) + 4)" * (cast_expression "(int *)(*(int *)(DAT_00302378 + 0xc) + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(DAT_00302378 + 0xc) + 4)" ( (binary_expression "*(int *)(DAT_00302378 + 0xc) + 4" (pointer_expression "*(int *)(DAT_00302378 + 0xc)" * (cast_expression "(int *)(DAT_00302378 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00302378 + 0xc)" ( (binary_expression "DAT_00302378 + 0xc" identifier + number_literal) )))) + number_literal) )))) + number_literal) ))))) ;) (expression_statement "local_130 = (uint *******)param_1[10];" (assignment_expression "local_130 = (uint *******)param_1[10]" identifier = (cast_expression "(uint *******)param_1[10]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[10]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22 = (uint *******)&DAT_00302378;" (assignment_expression "pppppppuVar22 = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "pppppppuVar29 = (uint *******)&__DT_PLTGOT;" (assignment_expression "pppppppuVar29 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (goto_statement "goto LAB_000a34ee;" goto statement_identifier ;)) (if_statement "if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }" if (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x18b1) == '\0')" ( (binary_expression "*(char *)((int)pppppuVar15 + 0x18b1) == '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x18b1)" * (cast_expression "(char *)((int)pppppuVar15 + 0x18b1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x18b1)" ( (binary_expression "(int)pppppuVar15 + 0x18b1" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }" { (if_statement "if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }" if (parenthesized_expression "(pppppuVar15[0x164d] == (uint ****)0x0)" ( (binary_expression "pppppuVar15[0x164d] == (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" identifier [ number_literal ]) == (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }" { (expression_statement "local_136 = *(byte *)(param_3 + 0x1ce);" (assignment_expression "local_136 = *(byte *)(param_3 + 0x1ce)" identifier = (pointer_expression "*(byte *)(param_3 + 0x1ce)" * (cast_expression "(byte *)(param_3 + 0x1ce)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x1ce)" ( (binary_expression "param_3 + 0x1ce" identifier + number_literal) ))))) ;) (expression_statement "pppppppuVar22 = (uint *******)(uint)local_136;" (assignment_expression "pppppppuVar22 = (uint *******)(uint)local_136" identifier = (cast_expression "(uint *******)(uint)local_136" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (cast_expression "(uint)local_136" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }" if (parenthesized_expression "(local_136 == 0)" ( (binary_expression "local_136 == 0" identifier == number_literal) )) (compound_statement "{\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }" { (if_statement "if (local_130 == (uint *******)0x0) {\n          return;\n        }" if (parenthesized_expression "(local_130 == (uint *******)0x0)" ( (binary_expression "local_130 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (expression_statement "local_148 = (uint ******)param_4[2];" (assignment_expression "local_148 = (uint ******)param_4[2]" identifier = (cast_expression "(uint ******)param_4[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_4[2]" identifier [ number_literal ]))) ;) (expression_statement "local_160 = *(uint *******)(*param_4 + 8);" (assignment_expression "local_160 = *(uint *******)(*param_4 + 8)" identifier = (pointer_expression "*(uint *******)(*param_4 + 8)" * (cast_expression "(uint *******)(*param_4 + 8)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*param_4 + 8)" ( (binary_expression "*param_4 + 8" (pointer_expression "*param_4" * identifier) + number_literal) ))))) ;) (expression_statement "local_164 = (uint ******)param_4[3];" (assignment_expression "local_164 = (uint ******)param_4[3]" identifier = (cast_expression "(uint ******)param_4[3]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_4[3]" identifier [ number_literal ]))) ;) (if_statement "if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }" if (parenthesized_expression "(local_164 != (uint ******)0x0)" ( (binary_expression "local_164 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          local_164 = (uint ******)local_164[2];\n        }" { (expression_statement "local_164 = (uint ******)local_164[2];" (assignment_expression "local_164 = (uint ******)local_164[2]" identifier = (cast_expression "(uint ******)local_164[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "local_164[2]" identifier [ number_literal ]))) ;) })) (expression_statement "local_17c = (uint *******)param_4[4];" (assignment_expression "local_17c = (uint *******)param_4[4]" identifier = (cast_expression "(uint *******)param_4[4]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_4[4]" identifier [ number_literal ]))) ;) (expression_statement "local_180 = (uint ******)param_4[6];" (assignment_expression "local_180 = (uint ******)param_4[6]" identifier = (cast_expression "(uint ******)param_4[6]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_4[6]" identifier [ number_literal ]))) ;) (if_statement "if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }" if (parenthesized_expression "(local_180 != (uint ******)0x0)" ( (binary_expression "local_180 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          local_180 = (uint ******)local_180[2];\n        }" { (expression_statement "local_180 = (uint ******)local_180[2];" (assignment_expression "local_180 = (uint ******)local_180[2]" identifier = (cast_expression "(uint ******)local_180[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "local_180[2]" identifier [ number_literal ]))) ;) })) (expression_statement "local_138 = '\0';" (assignment_expression "local_138 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_135 = '\0';" (assignment_expression "local_135 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_190 = (uint *******)0x0;" (assignment_expression "local_190 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_188 = (uint ******)param_4[7];" (assignment_expression "local_188 = (uint ******)param_4[7]" identifier = (cast_expression "(uint ******)param_4[7]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_4[7]" identifier [ number_literal ]))) ;) (expression_statement "local_144 = *(uint *******)(param_4[1] + 8);" (assignment_expression "local_144 = *(uint *******)(param_4[1] + 8)" identifier = (pointer_expression "*(uint *******)(param_4[1] + 8)" * (cast_expression "(uint *******)(param_4[1] + 8)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(param_4[1] + 8)" ( (binary_expression "param_4[1] + 8" (subscript_expression "param_4[1]" identifier [ number_literal ]) + number_literal) ))))) ;) (expression_statement "local_136 = '\0';" (assignment_expression "local_136 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_000a1e71;" goto statement_identifier ;) })) (expression_statement "local_190 = (uint *******)param_1[0x15];" (assignment_expression "local_190 = (uint *******)param_1[0x15]" identifier = (cast_expression "(uint *******)param_1[0x15]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x15]" identifier [ number_literal ]))) ;) (if_statement "if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;" if (parenthesized_expression "(local_190 != (uint *******)0x0)" ( (binary_expression "local_190 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000a1e0a;" goto statement_identifier ;)) (expression_statement "local_190 = (uint *******)0x0;" (assignment_expression "local_190 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }" else (compound_statement "{\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }" { (expression_statement "pppppppuVar22 = (uint *******)param_1[0x15];" (assignment_expression "pppppppuVar22 = (uint *******)param_1[0x15]" identifier = (cast_expression "(uint *******)param_1[0x15]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x15]" identifier [ number_literal ]))) ;) (expression_statement "local_190 = pppppppuVar22;" (assignment_expression "local_190 = pppppppuVar22" identifier = identifier) ;) (if_statement "if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;" if (parenthesized_expression "(pppppppuVar22 != (uint *******)0x0)" ( (binary_expression "pppppppuVar22 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000a33a4;" goto statement_identifier ;)) }))) (labeled_statement "LAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }" statement_identifier : (if_statement "if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }" if (parenthesized_expression "(param_4 == (int *)0x0)" ( (binary_expression "param_4 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }" { (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (expression_statement "FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);" (call_expression "FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22)" identifier (argument_list "("../../gold/object.cc",0x597,"do_layout",pppppppuVar22)" ( (string_literal ""../../gold/object.cc"" " string_content ") , number_literal , (string_literal ""do_layout"" " string_content ") , identifier ))) ;) }))) (if_statement "if (local_130 == (uint *******)0x0) {\n      return;\n    }" if (parenthesized_expression "(local_130 == (uint *******)0x0)" ( (binary_expression "local_130 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (expression_statement "pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);" (assignment_expression "pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20)" identifier = (cast_expression "(uint *******)FUN_0017ebf0(0x20)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_0017ebf0(0x20)" identifier (argument_list "(0x20)" ( number_literal ))))) ;) (expression_statement "local_190 = pppppppuVar22;" (assignment_expression "local_190 = pppppppuVar22" identifier = identifier) ;) (expression_statement "FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);" (call_expression "FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6)" identifier (argument_list "(param_1,pppppppuVar22,param_4,(int)local_130 << 6)" ( identifier , identifier , identifier , (binary_expression "(int)local_130 << 6" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))) ;) (expression_statement "local_160 = *pppppppuVar22;" (assignment_expression "local_160 = *pppppppuVar22" identifier = (pointer_expression "*pppppppuVar22" * identifier)) ;) (expression_statement "param_1[0x15] = (uint ******)pppppppuVar22;" (assignment_expression "param_1[0x15] = (uint ******)pppppppuVar22" (subscript_expression "param_1[0x15]" identifier [ number_literal ]) = (cast_expression "(uint ******)pppppppuVar22" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "local_148 = pppppppuVar22[2];" (assignment_expression "local_148 = pppppppuVar22[2]" identifier = (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ])) ;) (expression_statement "local_164 = pppppppuVar22[3];" (assignment_expression "local_164 = pppppppuVar22[3]" identifier = (subscript_expression "pppppppuVar22[3]" identifier [ number_literal ])) ;) (expression_statement "local_17c = (uint *******)pppppppuVar22[4];" (assignment_expression "local_17c = (uint *******)pppppppuVar22[4]" identifier = (cast_expression "(uint *******)pppppppuVar22[4]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[4]" identifier [ number_literal ]))) ;) (expression_statement "local_180 = pppppppuVar22[6];" (assignment_expression "local_180 = pppppppuVar22[6]" identifier = (subscript_expression "pppppppuVar22[6]" identifier [ number_literal ])) ;) (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" identifier = (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) ;) (expression_statement "local_188 = pppppppuVar22[7];" (assignment_expression "local_188 = pppppppuVar22[7]" identifier = (subscript_expression "pppppppuVar22[7]" identifier [ number_literal ])) ;) (expression_statement "local_144 = pppppppuVar22[1];" (assignment_expression "local_144 = pppppppuVar22[1]" identifier = (subscript_expression "pppppppuVar22[1]" identifier [ number_literal ])) ;) (expression_statement "pppppppuVar22 = local_13c;" (assignment_expression "pppppppuVar22 = local_13c" identifier = identifier) ;) (expression_statement "pppppppuVar29 = local_120;" (assignment_expression "pppppppuVar29 = local_120" identifier = identifier) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }" { (labeled_statement "LAB_000a34ee:\n      local_120 = pppppppuVar29;" statement_identifier : (expression_statement "local_120 = pppppppuVar29;" (assignment_expression "local_120 = pppppppuVar29" identifier = identifier) ;)) (expression_statement "local_13c = pppppppuVar22;" (assignment_expression "local_13c = pppppppuVar22" identifier = identifier) ;) (expression_statement "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);" (call_expression "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15)" identifier (argument_list "(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15)" ( (binary_expression "local_120 + -0x385a4" identifier + number_literal) , number_literal , (binary_expression "local_120 + -0x371c1" identifier + number_literal) , identifier ))) ;) })) (expression_statement "local_138 = '\x01';" (assignment_expression "local_138 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_135 = '\0';" (assignment_expression "local_135 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_136 = '\x01';" (assignment_expression "local_136 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }) (else_clause "else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }" else (compound_statement "{\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }" { (expression_statement "local_190 = (uint *******)param_1[0x15];" (assignment_expression "local_190 = (uint *******)param_1[0x15]" identifier = (cast_expression "(uint *******)param_1[0x15]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x15]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22 = param_1;" (assignment_expression "pppppppuVar22 = param_1" identifier = identifier) ;) (if_statement "if (local_190 == (uint *******)0x0) goto LAB_000a3448;" if (parenthesized_expression "(local_190 == (uint *******)0x0)" ( (binary_expression "local_190 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000a3448;" goto statement_identifier ;)) (if_statement "if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }" if (parenthesized_expression "(*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0')" ( (binary_expression "*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0'" (pointer_expression "*(char *)(*(int *)(param_2 + 0x158) + 0xc)" * (cast_expression "(char *)(*(int *)(param_2 + 0x158) + 0xc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_2 + 0x158) + 0xc)" ( (binary_expression "*(int *)(param_2 + 0x158) + 0xc" (pointer_expression "*(int *)(param_2 + 0x158)" * (cast_expression "(int *)(param_2 + 0x158)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x158)" ( (binary_expression "param_2 + 0x158" identifier + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }" { (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (expression_statement "FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);" (call_expression "FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190)" identifier (argument_list "("../../gold/object.cc",0x59d,"do_layout",local_190)" ( (string_literal ""../../gold/object.cc"" " string_content ") , number_literal , (string_literal ""do_layout"" " string_content ") , identifier ))) ;) })) (if_statement "if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }" if (parenthesized_expression "(pppppuVar15[0x164d] != (uint ****)0x0)" ( (binary_expression "pppppuVar15[0x164d] != (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" identifier [ number_literal ]) != (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }" { (labeled_statement "LAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }" statement_identifier : (if_statement "if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }" if (parenthesized_expression "(*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0')" ( (binary_expression "*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0'" (pointer_expression "*(char *)(*(int *)(param_2 + 0x15c) + 0x50)" * (cast_expression "(char *)(*(int *)(param_2 + 0x15c) + 0x50)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_2 + 0x15c) + 0x50)" ( (binary_expression "*(int *)(param_2 + 0x15c) + 0x50" (pointer_expression "*(int *)(param_2 + 0x15c)" * (cast_expression "(int *)(param_2 + 0x15c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x15c)" ( (binary_expression "param_2 + 0x15c" identifier + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }" { (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) (expression_statement "FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);" (call_expression "FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15)" identifier (argument_list "("../../gold/object.cc",0x59f,"do_layout",pppppuVar15)" ( (string_literal ""../../gold/object.cc"" " string_content ") , number_literal , (string_literal ""do_layout"" " string_content ") , identifier ))) ;) }))) })) (labeled_statement "LAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }" statement_identifier : (if_statement "if (local_130 == (uint *******)0x0) {\n      return;\n    }" if (parenthesized_expression "(local_130 == (uint *******)0x0)" ( (binary_expression "local_130 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) }))) (expression_statement "local_138 = '\x01';" (assignment_expression "local_138 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_135 = '\x01';" (assignment_expression "local_135 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_160 = *local_190;" (assignment_expression "local_160 = *local_190" identifier = (pointer_expression "*local_190" * identifier)) ;) (expression_statement "local_148 = local_190[2];" (assignment_expression "local_148 = local_190[2]" identifier = (subscript_expression "local_190[2]" identifier [ number_literal ])) ;) (expression_statement "local_136 = '\0';" (assignment_expression "local_136 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_164 = local_190[3];" (assignment_expression "local_164 = local_190[3]" identifier = (subscript_expression "local_190[3]" identifier [ number_literal ])) ;) (expression_statement "local_17c = (uint *******)local_190[4];" (assignment_expression "local_17c = (uint *******)local_190[4]" identifier = (cast_expression "(uint *******)local_190[4]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_190[4]" identifier [ number_literal ]))) ;) (expression_statement "local_180 = local_190[6];" (assignment_expression "local_180 = local_190[6]" identifier = (subscript_expression "local_190[6]" identifier [ number_literal ])) ;) (expression_statement "local_188 = local_190[7];" (assignment_expression "local_188 = local_190[7]" identifier = (subscript_expression "local_190[7]" identifier [ number_literal ])) ;) (expression_statement "local_144 = local_190[1];" (assignment_expression "local_144 = local_190[1]" identifier = (subscript_expression "local_190[1]" identifier [ number_literal ])) ;) (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" identifier = (cast_expression "(uint *******)&DAT_00302378" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00302378" & identifier))) ;) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" identifier = (cast_expression "(uint *******)&__DT_PLTGOT" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&__DT_PLTGOT" & identifier))) ;) }))) (labeled_statement "LAB_000a1e71:\n  pppppppuVar29 = local_124;" statement_identifier : (expression_statement "pppppppuVar29 = local_124;" (assignment_expression "pppppppuVar29 = local_124" identifier = identifier) ;)) (expression_statement "pppppppuVar22 = local_130;" (assignment_expression "pppppppuVar22 = local_130" identifier = identifier) ;) (expression_statement "ppppuVar14 = pppppuVar15[0x164f];" (assignment_expression "ppppuVar14 = pppppuVar15[0x164f]" identifier = (subscript_expression "pppppuVar15[0x164f]" identifier [ number_literal ])) ;) (expression_statement "local_124 = (uint *******)((uint)local_124 & 0xffffff00);" (assignment_expression "local_124 = (uint *******)((uint)local_124 & 0xffffff00)" identifier = (cast_expression "(uint *******)((uint)local_124 & 0xffffff00)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_124 & 0xffffff00)" ( (binary_expression "(uint)local_124 & 0xffffff00" (cast_expression "(uint)local_124" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }" if (parenthesized_expression "(ppppuVar14 != (uint ****)0x0)" ( (binary_expression "ppppuVar14 != (uint ****)0x0" identifier != (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }" { (expression_statement "local_124._1_3_ = SUB43(pppppppuVar29,1);" (assignment_expression "local_124._1_3_ = SUB43(pppppppuVar29,1)" (field_expression "local_124._1_3_" identifier . field_identifier) = (call_expression "SUB43(pppppppuVar29,1)" identifier (argument_list "(pppppppuVar29,1)" ( identifier , number_literal )))) ;) (expression_statement "local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));" (assignment_expression "local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" identifier = (cast_expression "(uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" identifier (argument_list "(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" ( (field_expression "local_124._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)(ppppuVar14 + 0x18)" * (cast_expression "(char *)(ppppuVar14 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppppuVar14 + 0x18)" ( (binary_expression "ppppuVar14 + 0x18" identifier + number_literal) )))) ))))) ;) (if_statement "if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }" if (parenthesized_expression "(*(char *)(ppppuVar14 + 0x18) != '\0')" ( (binary_expression "*(char *)(ppppuVar14 + 0x18) != '\0'" (pointer_expression "*(char *)(ppppuVar14 + 0x18)" * (cast_expression "(char *)(ppppuVar14 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppppuVar14 + 0x18)" ( (binary_expression "ppppuVar14 + 0x18" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }" { (expression_statement "local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);" (assignment_expression "local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1)" identifier = (cast_expression "(uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1)" ( (binary_expression "CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1" (call_expression "CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61))" identifier (argument_list "(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61))" ( (field_expression "local_124._1_3_" identifier . field_identifier) , (pointer_expression "*(undefined1 *)((int)ppppuVar14 + 0x61)" * (cast_expression "(undefined1 *)((int)ppppuVar14 + 0x61)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppuVar14 + 0x61)" ( (binary_expression "(int)ppppuVar14 + 0x61" (cast_expression "(int)ppppuVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))) ^ number_literal) )))) ;) })) })) (if_statement "if ((uint *******)0x3fffffff < local_130) {\n                    \n    FUN_001c5fe0();\n  }" if (parenthesized_expression "((uint *******)0x3fffffff < local_130)" ( (binary_expression "(uint *******)0x3fffffff < local_130" (cast_expression "(uint *******)0x3fffffff" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n                    \n    FUN_001c5fe0();\n  }" { (expression_statement "FUN_001c5fe0();" (call_expression "FUN_001c5fe0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_14c = (int)local_130 * 4;" (assignment_expression "local_14c = (int)local_130 * 4" identifier = (binary_expression "(int)local_130 * 4" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "local_158 = (undefined4 *)FUN_0017ebf0(local_14c);" (assignment_expression "local_158 = (undefined4 *)FUN_0017ebf0(local_14c)" identifier = (cast_expression "(undefined4 *)FUN_0017ebf0(local_14c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0017ebf0(local_14c)" identifier (argument_list "(local_14c)" ( identifier ))))) ;) (expression_statement "iVar19 = local_14c;" (assignment_expression "iVar19 = local_14c" identifier = identifier) ;) (expression_statement "puVar8 = local_158;" (assignment_expression "puVar8 = local_158" identifier = identifier) ;) (if_statement "if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }" if (parenthesized_expression "(pppppppuVar22 != (uint *******)0x0)" ( (binary_expression "pppppppuVar22 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }" { (do_statement "do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);" do (compound_statement "{\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    }" { (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "puVar8 = puVar8 + 1;" (assignment_expression "puVar8 = puVar8 + 1" identifier = (binary_expression "puVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar8 != local_158 + (int)pppppppuVar22)" ( (binary_expression "puVar8 != local_158 + (int)pppppppuVar22" identifier != (binary_expression "local_158 + (int)pppppppuVar22" identifier + (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier))) )) ;) })) (expression_statement "local_15c = (undefined4 *)FUN_0017ebf0(local_14c);" (assignment_expression "local_15c = (undefined4 *)FUN_0017ebf0(local_14c)" identifier = (cast_expression "(undefined4 *)FUN_0017ebf0(local_14c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0017ebf0(local_14c)" identifier (argument_list "(local_14c)" ( identifier ))))) ;) (expression_statement "puVar24 = auStack_1ac;" (assignment_expression "puVar24 = auStack_1ac" identifier = identifier) ;) (expression_statement "puVar26 = auStack_1ac;" (assignment_expression "puVar26 = auStack_1ac" identifier = identifier) ;) (expression_statement "pppppppuVar22 = (uint *******)(local_160 + 0x10);" (assignment_expression "pppppppuVar22 = (uint *******)(local_160 + 0x10)" identifier = (cast_expression "(uint *******)(local_160 + 0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(local_160 + 0x10)" ( (binary_expression "local_160 + 0x10" identifier + number_literal) )))) ;) (expression_statement "puVar8 = local_15c;" (assignment_expression "puVar8 = local_15c" identifier = identifier) ;) (expression_statement "local_134 = pppppppuVar22;" (assignment_expression "local_134 = pppppppuVar22" identifier = identifier) ;) (if_statement "if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }" if (parenthesized_expression "(local_130 != (uint *******)0x0)" ( (binary_expression "local_130 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }" { (do_statement "do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));" do (compound_statement "{\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    }" { (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "puVar8 = puVar8 + 1;" (assignment_expression "puVar8 = puVar8 + 1" identifier = (binary_expression "puVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar8 != (undefined4 *)((int)local_15c + iVar19))" ( (binary_expression "puVar8 != (undefined4 *)((int)local_15c + iVar19)" identifier != (cast_expression "(undefined4 *)((int)local_15c + iVar19)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_15c + iVar19)" ( (binary_expression "(int)local_15c + iVar19" (cast_expression "(int)local_15c" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) )) ;) (if_statement "if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }" if (parenthesized_expression "(local_130 != (uint *******)0x1)" ( (binary_expression "local_130 != (uint *******)0x1" identifier != (cast_expression "(uint *******)0x1" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }" { (expression_statement "pppppppuVar29 = (uint *******)0x1;" (assignment_expression "pppppppuVar29 = (uint *******)0x1" identifier = (cast_expression "(uint *******)0x1" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_140 = (uint *******)0x0;" (assignment_expression "local_140 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_16c = local_120 + -0x3748f;" (assignment_expression "local_16c = local_120 + -0x3748f" identifier = (binary_expression "local_120 + -0x3748f" identifier + number_literal)) ;) (expression_statement "local_154 = param_1 + 0x24;" (assignment_expression "local_154 = param_1 + 0x24" identifier = (binary_expression "param_1 + 0x24" identifier + number_literal)) ;) (do_statement "do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);" do (compound_statement "{\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      }" { (while_statement "while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }" { (if_statement "if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }" if (parenthesized_expression "((char)local_124 != '\0')" ( (binary_expression "(char)local_124 != '\0'" (cast_expression "(char)local_124" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }" { (expression_statement "local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));" (assignment_expression "local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0))" identifier = (cast_expression "(uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0))" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0))" ( (binary_expression "(int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0)" (cast_expression "(int)local_140" ( (type_descriptor "int" primitive_type) ) identifier) + (call_expression "(uint)(((uint)pppppppuVar22[2] & 2) != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(((uint)pppppppuVar22[2] & 2) != 0)" ( (binary_expression "((uint)pppppppuVar22[2] & 2) != 0" (parenthesized_expression "((uint)pppppppuVar22[2] & 2)" ( (binary_expression "(uint)pppppppuVar22[2] & 2" (cast_expression "(uint)pppppppuVar22[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ])) & number_literal) )) != number_literal) )))) )))) ;) })) (expression_statement "ppppppuVar21 = pppppppuVar22[1];" (assignment_expression "ppppppuVar21 = pppppppuVar22[1]" identifier = (subscript_expression "pppppppuVar22[1]" identifier [ number_literal ])) ;) (if_statement "if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;" if (parenthesized_expression "((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4))" ( (binary_expression "(ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)" (parenthesized_expression "(ppppppuVar21 == (uint ******)0x9)" ( (binary_expression "ppppppuVar21 == (uint ******)0x9" identifier == (cast_expression "(uint ******)0x9" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) || (parenthesized_expression "(ppppppuVar21 == (uint ******)0x4)" ( (binary_expression "ppppppuVar21 == (uint ******)0x4" identifier == (cast_expression "(uint ******)0x4" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ))) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);" statement_identifier : (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + 1)" ( (binary_expression "(int)pppppppuVar29 + 1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;)) (expression_statement "pppppppuVar22 = pppppppuVar22 + 0x10;" (assignment_expression "pppppppuVar22 = pppppppuVar22 + 0x10" identifier = (binary_expression "pppppppuVar22 + 0x10" identifier + number_literal)) ;) (if_statement "if (pppppppuVar29 == local_130) goto LAB_000a2028;" if (parenthesized_expression "(pppppppuVar29 == local_130)" ( (binary_expression "pppppppuVar29 == local_130" identifier == identifier) )) (goto_statement "goto LAB_000a2028;" goto statement_identifier ;)) })) (expression_statement "local_12c = (uint *******)pppppppuVar22[0xb];" (assignment_expression "local_12c = (uint *******)pppppppuVar22[0xb]" identifier = (cast_expression "(uint *******)pppppppuVar22[0xb]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[0xb]" identifier [ number_literal ]))) ;) (if_statement "if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }" if (parenthesized_expression "((uint *******)0xfeff < local_12c)" ( (binary_expression "(uint *******)0xfeff < local_12c" (cast_expression "(uint *******)0xfeff" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }" { (expression_statement "FUN_0004dee0(local_154);" (call_expression "FUN_0004dee0(local_154)" identifier (argument_list "(local_154)" ( identifier ))) ;) (expression_statement "local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);" (assignment_expression "local_12c = (uint *******)((int)local_12c + (int)param_1[0x29])" identifier = (cast_expression "(uint *******)((int)local_12c + (int)param_1[0x29])" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_12c + (int)param_1[0x29])" ( (binary_expression "(int)local_12c + (int)param_1[0x29]" (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_1[0x29]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x29]" identifier [ number_literal ]))) )))) ;) })) (if_statement "if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }" if (parenthesized_expression "((local_12c == (uint *******)0x0) || (local_130 <= local_12c))" ( (binary_expression "(local_12c == (uint *******)0x0) || (local_130 <= local_12c)" (parenthesized_expression "(local_12c == (uint *******)0x0)" ( (binary_expression "local_12c == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) || (parenthesized_expression "(local_130 <= local_12c)" ( (binary_expression "local_130 <= local_12c" identifier <= identifier) ))) )) (compound_statement "{\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }" { (expression_statement "uVar12 = gettext(local_16c);" (assignment_expression "uVar12 = gettext(local_16c)" identifier = (call_expression "gettext(local_16c)" identifier (argument_list "(local_16c)" ( identifier )))) ;) (expression_statement "FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);" (call_expression "FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c)" identifier (argument_list "(param_1,uVar12,pppppppuVar29,local_12c)" ( identifier , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_000a1f88;" goto statement_identifier ;) })) (expression_statement "piVar11 = local_158 + (int)local_12c;" (assignment_expression "piVar11 = local_158 + (int)local_12c" identifier = (binary_expression "local_158 + (int)local_12c" identifier + (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }" if (parenthesized_expression "(*piVar11 == 0)" ( (binary_expression "*piVar11 == 0" (pointer_expression "*piVar11" * identifier) == number_literal) )) (compound_statement "{\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }" { (expression_statement "*piVar11 = (int)pppppppuVar29;" (assignment_expression "*piVar11 = (int)pppppppuVar29" (pointer_expression "*piVar11" * identifier) = (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_15c[(int)local_12c] = ppppppuVar21;" (assignment_expression "local_15c[(int)local_12c] = ppppppuVar21" (subscript_expression "local_15c[(int)local_12c]" identifier [ (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) (goto_statement "goto LAB_000a1f88;" goto statement_identifier ;) })) (expression_statement "*piVar11 = -1;" (assignment_expression "*piVar11 = -1" (pointer_expression "*piVar11" * identifier) = number_literal) ;) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + 1)" ( (binary_expression "(int)pppppppuVar29 + 1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppuVar22 = pppppppuVar22 + 0x10;" (assignment_expression "pppppppuVar22 = pppppppuVar22 + 0x10" identifier = (binary_expression "pppppppuVar22 + 0x10" identifier + number_literal)) ;) }) while (parenthesized_expression "(pppppppuVar29 != local_130)" ( (binary_expression "pppppppuVar29 != local_130" identifier != identifier) )) ;) (goto_statement "goto LAB_000a2028;" goto statement_identifier ;) })) })) (expression_statement "local_140 = (uint *******)0x0;" (assignment_expression "local_140 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (labeled_statement "LAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }" statement_identifier : (if_statement "if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }" { (expression_statement "pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);" (assignment_expression "pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2)" identifier = (cast_expression "(uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[0xf] - (int)param_1[0xe] >> 2)" ( (binary_expression "(int)param_1[0xf] - (int)param_1[0xe] >> 2" (binary_expression "(int)param_1[0xf] - (int)param_1[0xe]" (cast_expression "(int)param_1[0xf]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xf]" identifier [ number_literal ])) - (cast_expression "(int)param_1[0xe]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xe]" identifier [ number_literal ]))) >> number_literal) )))) ;) (if_statement "if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }" if (parenthesized_expression "(pppppppuVar22 < local_130)" ( (binary_expression "pppppppuVar22 < local_130" identifier < identifier) )) (compound_statement "{\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }" { (expression_statement "FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);" (call_expression "FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22)" identifier (argument_list "(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22)" ( (binary_expression "param_1 + 0xe" identifier + number_literal) , (binary_expression "(int)local_130 - (int)pppppppuVar22" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) }) (else_clause "else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }" else (if_statement "if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }" if (parenthesized_expression "((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21))" ( (binary_expression "(local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)" (parenthesized_expression "(local_130 < pppppppuVar22)" ( (binary_expression "local_130 < pppppppuVar22" identifier < identifier) )) && (parenthesized_expression "(ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)" ( (comma_expression "ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21" (assignment_expression "ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c)" identifier = (cast_expression "(uint ******)((int)param_1[0xe] + local_14c)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)param_1[0xe] + local_14c)" ( (binary_expression "(int)param_1[0xe] + local_14c" (cast_expression "(int)param_1[0xe]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xe]" identifier [ number_literal ])) + identifier) )))) , (binary_expression "param_1[0xf] != ppppppuVar21" (subscript_expression "param_1[0xf]" identifier [ number_literal ]) != identifier)) ))) )) (compound_statement "{\n      param_1[0xf] = ppppppuVar21;\n    }" { (expression_statement "param_1[0xf] = ppppppuVar21;" (assignment_expression "param_1[0xf] = ppppppuVar21" (subscript_expression "param_1[0xf]" identifier [ number_literal ]) = identifier) ;) })))) (expression_statement "pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);" (assignment_expression "pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3)" identifier = (cast_expression "(uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[0x22] - (int)param_1[0x21] >> 3)" ( (binary_expression "(int)param_1[0x22] - (int)param_1[0x21] >> 3" (binary_expression "(int)param_1[0x22] - (int)param_1[0x21]" (cast_expression "(int)param_1[0x22]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x22]" identifier [ number_literal ])) - (cast_expression "(int)param_1[0x21]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x21]" identifier [ number_literal ]))) >> number_literal) )))) ;) (if_statement "if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }" if (parenthesized_expression "(pppppppuVar22 < local_130)" ( (binary_expression "pppppppuVar22 < local_130" identifier < identifier) )) (compound_statement "{\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }" { (expression_statement "FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);" (call_expression "FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22)" identifier (argument_list "(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22)" ( (binary_expression "param_1 + 0x21" identifier + number_literal) , (binary_expression "(int)local_130 - (int)pppppppuVar22" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) }) (else_clause "else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }" else (if_statement "if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }" if (parenthesized_expression "((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21))" ( (binary_expression "(local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)" (parenthesized_expression "(local_130 < pppppppuVar22)" ( (binary_expression "local_130 < pppppppuVar22" identifier < identifier) )) && (parenthesized_expression "(ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)" ( (comma_expression "ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21" (assignment_expression "ppppppuVar21 = param_1[0x21] + (int)local_130 * 2" identifier = (binary_expression "param_1[0x21] + (int)local_130 * 2" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) + (binary_expression "(int)local_130 * 2" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) , (binary_expression "param_1[0x22] != ppppppuVar21" (subscript_expression "param_1[0x22]" identifier [ number_literal ]) != identifier)) ))) )) (compound_statement "{\n      param_1[0x22] = ppppppuVar21;\n    }" { (expression_statement "param_1[0x22] = ppppppuVar21;" (assignment_expression "param_1[0x22] = ppppppuVar21" (subscript_expression "param_1[0x22]" identifier [ number_literal ]) = identifier) ;) })))) }))) (if_statement "if (param_1[7] == (uint ******)0x0) {\n                    \n                    \n    FUN_000917c0();\n  }" if (parenthesized_expression "(param_1[7] == (uint ******)0x0)" ( (binary_expression "param_1[7] == (uint ******)0x0" (subscript_expression "param_1[7]" identifier [ number_literal ]) == (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                    \n                    \n    FUN_000917c0();\n  }" { (expression_statement "FUN_000917c0();" (call_expression "FUN_000917c0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_137 = FUN_0005cf90(param_1[7]);" (assignment_expression "local_137 = FUN_0005cf90(param_1[7])" identifier = (call_expression "FUN_0005cf90(param_1[7])" identifier (argument_list "(param_1[7])" ( (subscript_expression "param_1[7]" identifier [ number_literal ]) )))) ;) (if_statement "if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    \n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }" if (parenthesized_expression "(local_137 == 0)" ( (binary_expression "local_137 == 0" identifier == number_literal) )) (compound_statement "{\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    \n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }" { (if_statement "if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }" if (parenthesized_expression "(local_140 != (uint *******)0x0)" ( (binary_expression "local_140 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }" { (expression_statement "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);" (call_expression "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" identifier (argument_list "(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" ( (binary_expression "local_120 + -0x385a4" identifier + number_literal) , number_literal , (binary_expression "local_120 + -0x371c1" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "ppppuVar14 = (*local_13c)[2][0x164f];" (assignment_expression "ppppuVar14 = (*local_13c)[2][0x164f]" identifier = (subscript_expression "(*local_13c)[2][0x164f]" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) [ number_literal ])) ;) (expression_statement "local_ec = param_1;" (assignment_expression "local_ec = param_1" identifier = identifier) ;) (expression_statement "pppuVar4 = ppppuVar14[8];" (assignment_expression "pppuVar4 = ppppuVar14[8]" identifier = (subscript_expression "ppppuVar14[8]" identifier [ number_literal ])) ;) (if_statement "if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }" if (parenthesized_expression "(pppuVar4 == ppppuVar14[9])" ( (binary_expression "pppuVar4 == ppppuVar14[9]" identifier == (subscript_expression "ppppuVar14[9]" identifier [ number_literal ])) )) (compound_statement "{\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }" { (expression_statement "FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);" (call_expression "FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec)" identifier (argument_list "(ppppuVar14 + 7,pppuVar4,&local_ec)" ( (binary_expression "ppppuVar14 + 7" identifier + number_literal) , identifier , (pointer_expression "&local_ec" & identifier) ))) ;) }) (else_clause "else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }" else (compound_statement "{\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }" { (expression_statement "*pppuVar4 = (uint **)param_1;" (assignment_expression "*pppuVar4 = (uint **)param_1" (pointer_expression "*pppuVar4" * identifier) = (cast_expression "(uint **)param_1" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "ppppuVar14[8] = pppuVar4 + 1;" (assignment_expression "ppppuVar14[8] = pppuVar4 + 1" (subscript_expression "ppppuVar14[8]" identifier [ number_literal ]) = (binary_expression "pppuVar4 + 1" identifier + number_literal)) ;) }))) (if_statement "if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }" if (parenthesized_expression "((uint *******)0x28f5c28 < local_140)" ( (binary_expression "(uint *******)0x28f5c28 < local_140" (cast_expression "(uint *******)0x28f5c28" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }" { (expression_statement "FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));" (call_expression "FUN_001c6190((byte *)((int)local_120 + -0xe7a7d))" identifier (argument_list "((byte *)((int)local_120 + -0xe7a7d))" ( (cast_expression "(byte *)((int)local_120 + -0xe7a7d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xe7a7d)" ( (binary_expression "(int)local_120 + -0xe7a7d" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) ))) ;) })) (expression_statement "ppppppuVar21 = param_1[0x48];" (assignment_expression "ppppppuVar21 = param_1[0x48]" identifier = (subscript_expression "param_1[0x48]" identifier [ number_literal ])) ;) (expression_statement "local_12c = (uint *******)param_1[0x4a];" (assignment_expression "local_12c = (uint *******)param_1[0x4a]" identifier = (cast_expression "(uint *******)param_1[0x4a]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0x4a]" identifier [ number_literal ]))) ;) (if_statement "if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }" if (parenthesized_expression "((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140)" ( (binary_expression "(uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140" (cast_expression "(uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7)" ( (binary_expression "((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7" (parenthesized_expression "((int)local_12c - (int)ppppppuVar21 >> 2)" ( (binary_expression "(int)local_12c - (int)ppppppuVar21 >> 2" (binary_expression "(int)local_12c - (int)ppppppuVar21" (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal) )) * number_literal) ))) < identifier) )) (compound_statement "{\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }" { (expression_statement "ppppppuVar17 = param_1[0x49];" (assignment_expression "ppppppuVar17 = param_1[0x49]" identifier = (subscript_expression "param_1[0x49]" identifier [ number_literal ])) ;) (expression_statement "local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);" (assignment_expression "local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21)" identifier = (cast_expression "(uint *******)((int)ppppppuVar17 - (int)ppppppuVar21)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppuVar17 - (int)ppppppuVar21)" ( (binary_expression "(int)ppppppuVar17 - (int)ppppppuVar21" (cast_expression "(int)ppppppuVar17" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_140 = (uint *******)((int)local_140 * 100);" (assignment_expression "local_140 = (uint *******)((int)local_140 * 100)" identifier = (cast_expression "(uint *******)((int)local_140 * 100)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_140 * 100)" ( (binary_expression "(int)local_140 * 100" (cast_expression "(int)local_140" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "local_12c = (uint *******)FUN_0017ebf0(local_140);" (assignment_expression "local_12c = (uint *******)FUN_0017ebf0(local_140)" identifier = (cast_expression "(uint *******)FUN_0017ebf0(local_140)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_0017ebf0(local_140)" identifier (argument_list "(local_140)" ( identifier ))))) ;) (if_statement "if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }" if (parenthesized_expression "(ppppppuVar21 != ppppppuVar17)" ( (binary_expression "ppppppuVar21 != ppppppuVar17" identifier != identifier) )) (compound_statement "{\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }" { (expression_statement "ppppppuVar13 = ppppppuVar21 + 2;" (assignment_expression "ppppppuVar13 = ppppppuVar21 + 2" identifier = (binary_expression "ppppppuVar21 + 2" identifier + number_literal)) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (do_statement "do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);" do (compound_statement "{\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          }" { (expression_statement "*pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);" (assignment_expression "*pppppppuVar22 = (uint ******)(pppppppuVar22 + 2)" (pointer_expression "*pppppppuVar22" * identifier) = (cast_expression "(uint ******)(pppppppuVar22 + 2)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(pppppppuVar22 + 2)" ( (binary_expression "pppppppuVar22 + 2" identifier + number_literal) )))) ;) (if_statement "if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }" if (parenthesized_expression "((uint ******)ppppppuVar13[-2] == ppppppuVar13)" ( (binary_expression "(uint ******)ppppppuVar13[-2] == ppppppuVar13" (cast_expression "(uint ******)ppppppuVar13[-2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[-2]" identifier [ number_literal ])) == identifier) )) (compound_statement "{\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }" { (expression_statement "pppppppuVar22[2] = (uint ******)*ppppppuVar13;" (assignment_expression "pppppppuVar22[2] = (uint ******)*ppppppuVar13" (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ]) = (cast_expression "(uint ******)*ppppppuVar13" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar13" * identifier))) ;) (expression_statement "pppppppuVar22[3] = (uint ******)ppppppuVar13[1];" (assignment_expression "pppppppuVar22[3] = (uint ******)ppppppuVar13[1]" (subscript_expression "pppppppuVar22[3]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[1]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[1]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[4] = (uint ******)ppppppuVar13[2];" (assignment_expression "pppppppuVar22[4] = (uint ******)ppppppuVar13[2]" (subscript_expression "pppppppuVar22[4]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[2]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[5] = (uint ******)ppppppuVar13[3];" (assignment_expression "pppppppuVar22[5] = (uint ******)ppppppuVar13[3]" (subscript_expression "pppppppuVar22[5]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[3]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[3]" identifier [ number_literal ]))) ;) }) (else_clause "else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }" else (compound_statement "{\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }" { (expression_statement "*pppppppuVar22 = (uint ******)ppppppuVar13[-2];" (assignment_expression "*pppppppuVar22 = (uint ******)ppppppuVar13[-2]" (pointer_expression "*pppppppuVar22" * identifier) = (cast_expression "(uint ******)ppppppuVar13[-2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[-2]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[2] = (uint ******)*ppppppuVar13;" (assignment_expression "pppppppuVar22[2] = (uint ******)*ppppppuVar13" (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ]) = (cast_expression "(uint ******)*ppppppuVar13" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar13" * identifier))) ;) }))) (expression_statement "pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];" (assignment_expression "pppppppuVar22[1] = (uint ******)ppppppuVar13[-1]" (subscript_expression "pppppppuVar22[1]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[-1]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[-1]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar13[-2] = (uint *****)ppppppuVar13;" (assignment_expression "ppppppuVar13[-2] = (uint *****)ppppppuVar13" (subscript_expression "ppppppuVar13[-2]" identifier [ number_literal ]) = (cast_expression "(uint *****)ppppppuVar13" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "ppppppuVar20 = ppppppuVar13 + 0x19;" (assignment_expression "ppppppuVar20 = ppppppuVar13 + 0x19" identifier = (binary_expression "ppppppuVar13 + 0x19" identifier + number_literal)) ;) (expression_statement "ppppppuVar13[-1] = (uint *****)0x0;" (assignment_expression "ppppppuVar13[-1] = (uint *****)0x0" (subscript_expression "ppppppuVar13[-1]" identifier [ number_literal ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "*(undefined1 *)ppppppuVar13 = 0;" (assignment_expression "*(undefined1 *)ppppppuVar13 = 0" (pointer_expression "*(undefined1 *)ppppppuVar13" * (cast_expression "(undefined1 *)ppppppuVar13" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "pppppppuVar22[6] = (uint ******)ppppppuVar13[4];" (assignment_expression "pppppppuVar22[6] = (uint ******)ppppppuVar13[4]" (subscript_expression "pppppppuVar22[6]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[4]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[4]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[7] = (uint ******)ppppppuVar13[5];" (assignment_expression "pppppppuVar22[7] = (uint ******)ppppppuVar13[5]" (subscript_expression "pppppppuVar22[7]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[5]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[5]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[8] = (uint ******)ppppppuVar13[6];" (assignment_expression "pppppppuVar22[8] = (uint ******)ppppppuVar13[6]" (subscript_expression "pppppppuVar22[8]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[6]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[6]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[9] = (uint ******)ppppppuVar13[7];" (assignment_expression "pppppppuVar22[9] = (uint ******)ppppppuVar13[7]" (subscript_expression "pppppppuVar22[9]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[7]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[10] = (uint ******)ppppppuVar13[8];" (assignment_expression "pppppppuVar22[10] = (uint ******)ppppppuVar13[8]" (subscript_expression "pppppppuVar22[10]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[8]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[8]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];" (assignment_expression "pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9]" (subscript_expression "pppppppuVar22[0xb]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[9]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[9]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];" (assignment_expression "pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10]" (subscript_expression "pppppppuVar22[0xc]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[10]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[10]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];" (assignment_expression "pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb]" (subscript_expression "pppppppuVar22[0xd]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xb]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xb]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];" (assignment_expression "pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc]" (subscript_expression "pppppppuVar22[0xe]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xc]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xc]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];" (assignment_expression "pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd]" (subscript_expression "pppppppuVar22[0xf]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xd]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xd]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];" (assignment_expression "pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe]" (subscript_expression "pppppppuVar22[0x10]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xe]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xe]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];" (assignment_expression "pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf]" (subscript_expression "pppppppuVar22[0x11]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0xf]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0xf]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];" (assignment_expression "pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10]" (subscript_expression "pppppppuVar22[0x12]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x10]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x10]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];" (assignment_expression "pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11]" (subscript_expression "pppppppuVar22[0x13]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x11]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x11]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];" (assignment_expression "pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12]" (subscript_expression "pppppppuVar22[0x14]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x12]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x12]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];" (assignment_expression "pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13]" (subscript_expression "pppppppuVar22[0x15]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x13]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x13]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];" (assignment_expression "pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14]" (subscript_expression "pppppppuVar22[0x16]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x14]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x14]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];" (assignment_expression "pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15]" (subscript_expression "pppppppuVar22[0x17]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x15]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x15]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];" (assignment_expression "pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16]" (subscript_expression "pppppppuVar22[0x18]" identifier [ number_literal ]) = (cast_expression "(uint ******)ppppppuVar13[0x16]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar13[0x16]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar13 = ppppppuVar20;" (assignment_expression "ppppppuVar13 = ppppppuVar20" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar22 + 0x19;" (assignment_expression "pppppppuVar22 = pppppppuVar22 + 0x19" identifier = (binary_expression "pppppppuVar22 + 0x19" identifier + number_literal)) ;) }) while (parenthesized_expression "(ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20)" ( (binary_expression "ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20" (binary_expression "ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b" (binary_expression "ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19" identifier + (binary_expression "(((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19" (parenthesized_expression "(((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff)" ( (binary_expression "((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff" (binary_expression "((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29" (parenthesized_expression "((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2)" ( (binary_expression "(uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2" (call_expression "(uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)ppppppuVar17 + (-100 - (int)ppppppuVar21))" ( (binary_expression "(int)ppppppuVar17 + (-100 - (int)ppppppuVar21)" (cast_expression "(int)ppppppuVar17" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-100 - (int)ppppppuVar21)" ( (binary_expression "-100 - (int)ppppppuVar21" number_literal - (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))) >> number_literal) )) * number_literal) & number_literal) )) * number_literal)) + number_literal) != identifier) )) ;) })) (expression_statement "ppppppuVar21 = param_1[0x49];" (assignment_expression "ppppppuVar21 = param_1[0x49]" identifier = (subscript_expression "param_1[0x49]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar17 = param_1[0x48];" (assignment_expression "ppppppuVar17 = param_1[0x48]" identifier = (subscript_expression "param_1[0x48]" identifier [ number_literal ])) ;) (if_statement "if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }" if (parenthesized_expression "(ppppppuVar21 != ppppppuVar17)" ( (binary_expression "ppppppuVar21 != ppppppuVar17" identifier != identifier) )) (compound_statement "{\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }" { (do_statement "do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);" do (compound_statement "{\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          }" { (if_statement "if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }" if (parenthesized_expression "((uint ******)*ppppppuVar17 != ppppppuVar17 + 2)" ( (binary_expression "(uint ******)*ppppppuVar17 != ppppppuVar17 + 2" (cast_expression "(uint ******)*ppppppuVar17" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar17" * identifier)) != (binary_expression "ppppppuVar17 + 2" identifier + number_literal)) )) (compound_statement "{\n              FUN_001807a0(*ppppppuVar17);\n            }" { (expression_statement "FUN_001807a0(*ppppppuVar17);" (call_expression "FUN_001807a0(*ppppppuVar17)" identifier (argument_list "(*ppppppuVar17)" ( (pointer_expression "*ppppppuVar17" * identifier) ))) ;) })) (expression_statement "ppppppuVar17 = ppppppuVar17 + 0x19;" (assignment_expression "ppppppuVar17 = ppppppuVar17 + 0x19" identifier = (binary_expression "ppppppuVar17 + 0x19" identifier + number_literal)) ;) }) while (parenthesized_expression "(ppppppuVar21 != ppppppuVar17)" ( (binary_expression "ppppppuVar21 != ppppppuVar17" identifier != identifier) )) ;) (expression_statement "ppppppuVar17 = param_1[0x48];" (assignment_expression "ppppppuVar17 = param_1[0x48]" identifier = (subscript_expression "param_1[0x48]" identifier [ number_literal ])) ;) })) (if_statement "if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }" if (parenthesized_expression "(ppppppuVar17 != (uint ******)0x0)" ( (binary_expression "ppppppuVar17 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          FUN_001807a0(ppppppuVar17);\n        }" { (expression_statement "FUN_001807a0(ppppppuVar17);" (call_expression "FUN_001807a0(ppppppuVar17)" identifier (argument_list "(ppppppuVar17)" ( identifier ))) ;) })) (expression_statement "param_1[0x48] = (uint ******)local_12c;" (assignment_expression "param_1[0x48] = (uint ******)local_12c" (subscript_expression "param_1[0x48]" identifier [ number_literal ]) = (cast_expression "(uint ******)local_12c" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);" (assignment_expression "param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c)" (subscript_expression "param_1[0x49]" identifier [ number_literal ]) = (cast_expression "(uint ******)((int)local_124 + (int)local_12c)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_124 + (int)local_12c)" ( (binary_expression "(int)local_124 + (int)local_12c" (cast_expression "(int)local_124" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);" (assignment_expression "param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c)" (subscript_expression "param_1[0x4a]" identifier [ number_literal ]) = (cast_expression "(uint ******)((int)local_140 + (int)local_12c)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_140 + (int)local_12c)" ( (binary_expression "(int)local_140 + (int)local_12c" (cast_expression "(int)local_140" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_12c" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) })) (expression_statement "*(byte *)((int)param_1 + 0x11d) = 1;" (assignment_expression "*(byte *)((int)param_1 + 0x11d) = 1" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" * (cast_expression "(byte *)((int)param_1 + 0x11d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x11d)" ( (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) })) (expression_statement "pppppppuVar29 = local_130;" (assignment_expression "pppppppuVar29 = local_130" identifier = identifier) ;) (expression_statement "local_b0 = (void *)0x0;" (assignment_expression "local_b0 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "local_a8 = (void *)0x0;" (assignment_expression "local_a8 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_a4 = 0;" (assignment_expression "local_a4 = 0" identifier = number_literal) ;) (expression_statement "local_a0 = (byte *)0x0;" (assignment_expression "local_a0 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);" (assignment_expression "pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4)" identifier = (cast_expression "(uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(((uint)((int)local_130 + 0x1fU) >> 5) * 4)" ( (binary_expression "((uint)((int)local_130 + 0x1fU) >> 5) * 4" (parenthesized_expression "((uint)((int)local_130 + 0x1fU) >> 5)" ( (binary_expression "(uint)((int)local_130 + 0x1fU) >> 5" (call_expression "(uint)((int)local_130 + 0x1fU)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)local_130 + 0x1fU)" ( (binary_expression "(int)local_130 + 0x1fU" (cast_expression "(int)local_130" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) >> number_literal) )) * number_literal) )))) ;) (expression_statement "local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);" (assignment_expression "local_b0 = (void *)FUN_0017ebf0(pppppppuVar27)" identifier = (cast_expression "(void *)FUN_0017ebf0(pppppppuVar27)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0017ebf0(pppppppuVar27)" identifier (argument_list "(pppppppuVar27)" ( identifier ))))) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);" (assignment_expression "local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27)" identifier = (cast_expression "(byte *)((int)local_b0 + (int)pppppppuVar27)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + (int)pppppppuVar27)" ( (binary_expression "(int)local_b0 + (int)pppppppuVar27" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_a4 = (uint)pppppppuVar29 & 0x1f;" (assignment_expression "local_a4 = (uint)pppppppuVar29 & 0x1f" identifier = (binary_expression "(uint)pppppppuVar29 & 0x1f" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);" (assignment_expression "local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4)" identifier = (cast_expression "(void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((int)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((int)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((int)pppppppuVar29 >> 5)" ( (binary_expression "(int)pppppppuVar29 >> 5" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) * number_literal)) )))) ;) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "memset(local_b0,0,(size_t)pppppppuVar27);" (call_expression "memset(local_b0,0,(size_t)pppppppuVar27)" identifier (argument_list "(local_b0,0,(size_t)pppppppuVar27)" ( identifier , number_literal , (cast_expression "(size_t)pppppppuVar27" ( (type_descriptor "size_t" primitive_type) ) identifier) ))) ;) (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" identifier = (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }" { (expression_statement "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);" (call_expression "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" identifier (argument_list "(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" ( (binary_expression "local_120 + -0x385a4" identifier + number_literal) , number_literal , (binary_expression "local_120 + -0x371c1" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);" (assignment_expression "bVar3 = *(byte *)((int)pppppuVar15 + 0x318d)" identifier = (pointer_expression "*(byte *)((int)pppppuVar15 + 0x318d)" * (cast_expression "(byte *)((int)pppppuVar15 + 0x318d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x318d)" ( (binary_expression "(int)pppppuVar15 + 0x318d" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "pppppppuVar29 = (uint *******)(uint)bVar3;" (assignment_expression "pppppppuVar29 = (uint *******)(uint)bVar3" identifier = (cast_expression "(uint *******)(uint)bVar3" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (cast_expression "(uint)bVar3" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);" (assignment_expression "local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3)" identifier = (cast_expression "(uint *******)CONCAT31(local_140._1_3_,bVar3)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "CONCAT31(local_140._1_3_,bVar3)" identifier (argument_list "(local_140._1_3_,bVar3)" ( (field_expression "local_140._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }" if (parenthesized_expression "(bVar3 == 0)" ( (binary_expression "bVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }" { (expression_statement "bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);" (assignment_expression "bVar3 = *(byte *)((int)pppppuVar15 + 0x3095)" identifier = (pointer_expression "*(byte *)((int)pppppuVar15 + 0x3095)" * (cast_expression "(byte *)((int)pppppuVar15 + 0x3095)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x3095)" ( (binary_expression "(int)pppppuVar15 + 0x3095" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) })) (expression_statement "local_14c = CONCAT31(local_14c._1_3_,bVar3);" (assignment_expression "local_14c = CONCAT31(local_14c._1_3_,bVar3)" identifier = (call_expression "CONCAT31(local_14c._1_3_,bVar3)" identifier (argument_list "(local_14c._1_3_,bVar3)" ( (field_expression "local_14c._1_3_" identifier . field_identifier) , identifier )))) ;) (expression_statement "local_e0 = (uint *******)0x0;" (assignment_expression "local_e0 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_dc = (uint *******)0x0;" (assignment_expression "local_dc = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_d8 = (uint *******)0x0;" (assignment_expression "local_d8 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_d4 = (int *)0x0;" (assignment_expression "local_d4 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_d0 = (int *)0x0;" (assignment_expression "local_d0 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_cc = (int *)0x0;" (assignment_expression "local_cc = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_c8 = (int *)0x0;" (assignment_expression "local_c8 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_c4 = (int *)0x0;" (assignment_expression "local_c4 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_c0 = (int *)0x0;" (assignment_expression "local_c0 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_bc = (int *)0x0;" (assignment_expression "local_bc = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b8 = (int *)0x0;" (assignment_expression "local_b8 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b4 = (int *)0x0;" (assignment_expression "local_b4 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_f0 = (uint *******)0x1;" (assignment_expression "local_f0 = (uint *******)0x1" identifier = (cast_expression "(uint *******)0x1" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }" if (parenthesized_expression "(local_130 < (uint *******)0x2)" ( (binary_expression "local_130 < (uint *******)0x2" identifier < (cast_expression "(uint *******)0x2" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }" { (expression_statement "local_16c = (uint *******)0x0;" (assignment_expression "local_16c = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_168 = 0;" (assignment_expression "local_168 = 0" identifier = number_literal) ;) (expression_statement "pppppppuVar28 = local_134;" (assignment_expression "pppppppuVar28 = local_134" identifier = identifier) ;) (labeled_statement "LAB_000a2740:\n      local_134 = pppppppuVar28;" statement_identifier : (expression_statement "local_134 = pppppppuVar28;" (assignment_expression "local_134 = pppppppuVar28" identifier = identifier) ;)) (if_statement "if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }" { (expression_statement "*(uint ********)(puVar24 + -0xc) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x10) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x10) = param_3" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa275f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa275f" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0007bc30();" (call_expression "FUN_0007bc30()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar10 = (uint)local_137;" (assignment_expression "uVar10 = (uint)local_137" identifier = (cast_expression "(uint)local_137" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar24 + -0x14) = local_168;" (assignment_expression "*(uint *)(puVar24 + -0x14) = local_168" (pointer_expression "*(uint *)(puVar24 + -0x14)" * (cast_expression "(uint *)(puVar24 + -0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x18) = local_16c;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_16c" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar24 + -0x1c) = uVar10;" (assignment_expression "*(uint *)(puVar24 + -0x1c) = uVar10" (pointer_expression "*(uint *)(puVar24 + -0x1c)" * (cast_expression "(uint *)(puVar24 + -0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x20) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x20) = param_3" (pointer_expression "*(int *)(puVar24 + -0x20)" * (cast_expression "(int *)(puVar24 + -0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x24) = 0xa277f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x24) = 0xa277f" (pointer_expression "*(undefined4 *)(puVar24 + -0x24)" * (cast_expression "(undefined4 *)(puVar24 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0007bb30();" (call_expression "FUN_0007bb30()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_02;" (assignment_expression "pppppppuVar29 = extraout_ECX_02" identifier = identifier) ;) })) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (if_statement "if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_136 == '\0')" ( (binary_expression "local_136 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }" { (if_statement "if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }" if (parenthesized_expression "(local_d0 != local_d4)" ( (binary_expression "local_d0 != local_d4" identifier != identifier) )) (compound_statement "{\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }" { (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" identifier = (cast_expression "(uint *******)&local_84" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_84" & identifier))) ;) (expression_statement "piVar11 = local_d4;" (assignment_expression "piVar11 = local_d4" identifier = identifier) ;) (do_statement "do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);" do (compound_statement "{\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          }" { (expression_statement "iVar19 = *piVar11;" (assignment_expression "iVar19 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (subscript_expression "local_15c[iVar19]" identifier [ identifier ])) ;) (expression_statement "pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);" (assignment_expression "pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10)" identifier = (cast_expression "(uint *******)(local_160 + iVar19 * 0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(local_160 + iVar19 * 0x10)" ( (binary_expression "local_160 + iVar19 * 0x10" identifier + (binary_expression "iVar19 * 0x10" identifier * number_literal)) )))) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = local_158[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_158[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x18) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x18) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x18)" * (cast_expression "(int *)(puVar24 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x1c) = local_188;" (assignment_expression "*(uint *******)(puVar24 + -0x1c) = local_188" (pointer_expression "*(uint *******)(puVar24 + -0x1c)" * (cast_expression "(uint *******)(puVar24 + -0x1c)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x20) = local_180;" (assignment_expression "*(uint *******)(puVar24 + -0x20) = local_180" (pointer_expression "*(uint *******)(puVar24 + -0x20)" * (cast_expression "(uint *******)(puVar24 + -0x20)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x24) = local_17c;" (assignment_expression "*(uint ********)(puVar24 + -0x24) = local_17c" (pointer_expression "*(uint ********)(puVar24 + -0x24)" * (cast_expression "(uint ********)(puVar24 + -0x24)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x28) = local_164;" (assignment_expression "*(uint *******)(puVar24 + -0x28) = local_164" (pointer_expression "*(uint *******)(puVar24 + -0x28)" * (cast_expression "(uint *******)(puVar24 + -0x28)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x28)" ( (binary_expression "puVar24 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x2c) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x2c) = param_3" (pointer_expression "*(int *)(puVar24 + -0x2c)" * (cast_expression "(int *)(puVar24 + -0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x2c)" ( (binary_expression "puVar24 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x30) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x30) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x30)" * (cast_expression "(uint ********)(puVar24 + -0x30)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x30)" ( (binary_expression "puVar24 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_84 = pppppppuVar22;" (assignment_expression "local_84 = pppppppuVar22" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa374f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa374f" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" * (cast_expression "(undefined4 *)(puVar24 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x34)" ( (binary_expression "puVar24 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00096690();" (call_expression "FUN_00096690()" identifier (argument_list "()" ( ))) ;) (expression_statement "piVar11 = piVar11 + 1;" (assignment_expression "piVar11 = piVar11 + 1" identifier = (binary_expression "piVar11 + 1" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_13;" (assignment_expression "pppppppuVar29 = extraout_ECX_13" identifier = identifier) ;) }) while (parenthesized_expression "(local_d0 != piVar11)" ( (binary_expression "local_d0 != piVar11" identifier != identifier) )) ;) })) }) (else_clause "else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" else (if_statement "if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_d0 != local_d4)" ( (binary_expression "local_d0 != local_d4" identifier != identifier) )) (compound_statement "{\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x751;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x751" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x375d2" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa44e7;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa44e7" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })))) (if_statement "if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }" if (parenthesized_expression "((char)local_14c != '\0')" ( (binary_expression "(char)local_14c != '\0'" (cast_expression "(char)local_14c" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }" { (expression_statement "ppppppuVar21 = param_1[10];" (assignment_expression "ppppppuVar21 = param_1[10]" identifier = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0xc;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0xc" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa41d3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa41d3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppppppuVar17 = (uint ******)FUN_0017ebf0();" (assignment_expression "ppppppuVar17 = (uint ******)FUN_0017ebf0()" identifier = (cast_expression "(uint ******)FUN_0017ebf0()" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "FUN_0017ebf0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*ppppppuVar17 = (uint *****)0x0;" (assignment_expression "*ppppppuVar17 = (uint *****)0x0" (pointer_expression "*ppppppuVar17" * identifier) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar17[1] = (uint *****)0x0;" (assignment_expression "ppppppuVar17[1] = (uint *****)0x0" (subscript_expression "ppppppuVar17[1]" identifier [ number_literal ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar17[2] = (uint *****)0x0;" (assignment_expression "ppppppuVar17[2] = (uint *****)0x0" (subscript_expression "ppppppuVar17[2]" identifier [ number_literal ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (if_statement "if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }" if (parenthesized_expression "(ppppppuVar21 == (uint ******)0x0)" ( (binary_expression "ppppppuVar21 == (uint ******)0x0" identifier == (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }" { (expression_statement "pppppuVar15 = (uint *****)0x0;" (assignment_expression "pppppuVar15 = (uint *****)0x0" identifier = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_27;" (assignment_expression "pppppppuVar29 = extraout_ECX_27" identifier = identifier) ;) }) (else_clause "else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }" else (compound_statement "{\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }" { (if_statement "if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }" if (parenthesized_expression "((uint ******)0x3fffffff < ppppppuVar21)" ( (binary_expression "(uint ******)0x3fffffff < ppppppuVar21" (cast_expression "(uint ******)0x3fffffff" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal) < identifier) )) (compound_statement "{\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }" { (expression_statement "*(undefined1 **)(puVar24 + -4) = &LAB_000a4530;" (assignment_expression "*(undefined1 **)(puVar24 + -4) = &LAB_000a4530" (pointer_expression "*(undefined1 **)(puVar24 + -4)" * (cast_expression "(undefined1 **)(puVar24 + -4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = (pointer_expression "&LAB_000a4530" & identifier)) ;) (expression_statement "FUN_001c5fe0();" (call_expression "FUN_001c5fe0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;" (assignment_expression "*(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "(int)ppppppuVar21 * 4" (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4212;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4212" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pppppuVar18 = (uint *****)FUN_0017ebf0();" (assignment_expression "pppppuVar18 = (uint *****)FUN_0017ebf0()" identifier = (cast_expression "(uint *****)FUN_0017ebf0()" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (call_expression "FUN_0017ebf0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;" (assignment_expression "pppppuVar15 = pppppuVar18 + (int)ppppppuVar21" identifier = (binary_expression "pppppuVar18 + (int)ppppppuVar21" identifier + (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "*ppppppuVar17 = pppppuVar18;" (assignment_expression "*ppppppuVar17 = pppppuVar18" (pointer_expression "*ppppppuVar17" * identifier) = identifier) ;) (expression_statement "ppppppuVar17[2] = pppppuVar15;" (assignment_expression "ppppppuVar17[2] = pppppuVar15" (subscript_expression "ppppppuVar17[2]" identifier [ number_literal ]) = identifier) ;) (do_statement "do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);" do (compound_statement "{\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          }" { (expression_statement "*pppppuVar18 = (uint ****)0x0;" (assignment_expression "*pppppuVar18 = (uint ****)0x0" (pointer_expression "*pppppuVar18" * identifier) = (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) ;) (expression_statement "pppppuVar18 = pppppuVar18 + 1;" (assignment_expression "pppppuVar18 = pppppuVar18 + 1" identifier = (binary_expression "pppppuVar18 + 1" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_28;" (assignment_expression "pppppppuVar29 = extraout_ECX_28" identifier = identifier) ;) }) while (parenthesized_expression "(pppppuVar15 != pppppuVar18)" ( (binary_expression "pppppuVar15 != pppppuVar18" identifier != identifier) )) ;) }))) (expression_statement "ppppppuVar17[1] = pppppuVar15;" (assignment_expression "ppppppuVar17[1] = pppppuVar15" (subscript_expression "ppppppuVar17[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "param_1[0x11] = ppppppuVar17;" (assignment_expression "param_1[0x11] = ppppppuVar17" (subscript_expression "param_1[0x11]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (if_statement "if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_138 == '\0')" ( (binary_expression "local_138 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }" { (if_statement "if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }" if (parenthesized_expression "(local_e0 != local_dc)" ( (binary_expression "local_e0 != local_dc" identifier != identifier) )) (compound_statement "{\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }" { (expression_statement "local_12c = local_e0;" (assignment_expression "local_12c = local_e0" identifier = identifier) ;) (expression_statement "local_134 = param_1 + 0x24;" (assignment_expression "local_134 = param_1 + 0x24" identifier = (binary_expression "param_1 + 0x24" identifier + number_literal)) ;) (expression_statement "local_13c = (uint *******)&local_9c;" (assignment_expression "local_13c = (uint *******)&local_9c" identifier = (cast_expression "(uint *******)&local_9c" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_9c" & identifier))) ;) (do_statement "do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);" do (compound_statement "{\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          }" { (expression_statement "pppppppuVar22 = (uint *******)*local_12c;" (assignment_expression "pppppppuVar22 = (uint *******)*local_12c" identifier = (cast_expression "(uint *******)*local_12c" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*local_12c" * identifier))) ;) (expression_statement "pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);" (assignment_expression "pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10)" identifier = (cast_expression "(uint *******)(local_160 + (int)pppppppuVar22 * 0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(local_160 + (int)pppppppuVar22 * 0x10)" ( (binary_expression "local_160 + (int)pppppppuVar22 * 0x10" identifier + (binary_expression "(int)pppppppuVar22 * 0x10" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "pppppppuVar27 = (uint *******)pppppppuVar28[0xb];" (assignment_expression "pppppppuVar27 = (uint *******)pppppppuVar28[0xb]" identifier = (cast_expression "(uint *******)pppppppuVar28[0xb]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar28[0xb]" identifier [ number_literal ]))) ;) (expression_statement "local_9c = pppppppuVar28;" (assignment_expression "local_9c = pppppppuVar28" identifier = identifier) ;) (if_statement "if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }" if (parenthesized_expression "((uint *******)0xfeff < pppppppuVar27)" ( (binary_expression "(uint *******)0xfeff < pppppppuVar27" (cast_expression "(uint *******)0xfeff" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_134;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_134" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3ae3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004dee0();" (call_expression "FUN_0004dee0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);" (assignment_expression "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29])" identifier = (cast_expression "(uint *******)((int)pppppppuVar27 + (int)param_1[0x29])" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar27 + (int)param_1[0x29])" ( (binary_expression "(int)pppppppuVar27 + (int)param_1[0x29]" (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_1[0x29]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0x29]" identifier [ number_literal ]))) )))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_17;" (assignment_expression "pppppppuVar29 = extraout_ECX_17" identifier = identifier) ;) })) (expression_statement "pppppppuVar32 = local_120;" (assignment_expression "pppppppuVar32 = local_120" identifier = identifier) ;) (if_statement "if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }" if (parenthesized_expression "(pppppppuVar27 < local_130)" ( (binary_expression "pppppppuVar27 < local_130" identifier < identifier) )) (compound_statement "{\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }" { (expression_statement "local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];" (assignment_expression "local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27]" identifier = (cast_expression "(uint *******)param_1[0xe][(int)pppppppuVar27]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[0xe][(int)pppppppuVar27]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier) ]))) ;) (if_statement "if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" if (parenthesized_expression "(local_124 == (uint *******)0x2)" ( (binary_expression "local_124 == (uint *******)0x2" identifier == (cast_expression "(uint *******)0x2" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }" { (if_statement "if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }" { (expression_statement "ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);" (assignment_expression "ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c)" identifier = (cast_expression "(uint ******)((int)local_144 + (int)*local_9c)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_144 + (int)*local_9c)" ( (binary_expression "(int)local_144 + (int)*local_9c" (cast_expression "(int)local_144" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)*local_9c" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*local_9c" * identifier))) )))) ;) (expression_statement "local_140 = (uint *******)local_9c[1];" (assignment_expression "local_140 = (uint *******)local_9c[1]" identifier = (cast_expression "(uint *******)local_9c[1]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_9c[1]" identifier [ number_literal ]))) ;) (expression_statement "local_194 = local_7c;" (assignment_expression "local_194 = local_7c" identifier = identifier) ;) (expression_statement "local_84 = local_7c;" (assignment_expression "local_84 = local_7c" identifier = identifier) ;) (expression_statement "puVar16 = (undefined *)0xffffffff;" (assignment_expression "puVar16 = (undefined *)0xffffffff" identifier = (cast_expression "(undefined *)0xffffffff" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_124 = param_1 + 0x4b;" (assignment_expression "local_124 = param_1 + 0x4b" identifier = (binary_expression "param_1 + 0x4b" identifier + number_literal)) ;) (if_statement "if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }" if (parenthesized_expression "(ppppppuVar21 != (uint ******)0x0)" ( (binary_expression "ppppppuVar21 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }" { (expression_statement "local_148 = ppppppuVar21;" (assignment_expression "local_148 = ppppppuVar21" identifier = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x10) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar24 + -0x10) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3b4f" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "sVar9 = strlen(*(char **)(puVar24 + -0x10));" (assignment_expression "sVar9 = strlen(*(char **)(puVar24 + -0x10))" identifier = (call_expression "strlen(*(char **)(puVar24 + -0x10))" identifier (argument_list "(*(char **)(puVar24 + -0x10))" ( (pointer_expression "*(char **)(puVar24 + -0x10)" * (cast_expression "(char **)(puVar24 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) )))) ;) (expression_statement "puVar16 = (undefined *)(sVar9 + (int)local_148);" (assignment_expression "puVar16 = (undefined *)(sVar9 + (int)local_148)" identifier = (cast_expression "(undefined *)(sVar9 + (int)local_148)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(sVar9 + (int)local_148)" ( (binary_expression "sVar9 + (int)local_148" identifier + (cast_expression "(int)local_148" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "ppppppuVar21 = local_148;" (assignment_expression "ppppppuVar21 = local_148" identifier = identifier) ;) })) (expression_statement "*(undefined4 *)(puVar24 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -4)" * (cast_expression "(undefined4 *)(puVar24 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar24 + -8) = puVar16;" (assignment_expression "*(undefined **)(puVar24 + -8) = puVar16" (pointer_expression "*(undefined **)(puVar24 + -8)" * (cast_expression "(undefined **)(puVar24 + -8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0xc) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar24 + -0xc) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar24 + -0xc)" * (cast_expression "(uint *******)(puVar24 + -0xc)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *********)(puVar24 + -0x10) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0x10) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0x10)" * (cast_expression "(uint *********)(puVar24 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3b67;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3b67" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004cf80();" (call_expression "FUN_0004cf80()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "local_64 = (uint *******)0x0;" (assignment_expression "local_64 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_60 = *pppppppuVar28;" (assignment_expression "local_60 = *pppppppuVar28" identifier = (pointer_expression "*pppppppuVar28" * identifier)) ;) (expression_statement "local_58 = pppppppuVar28[2];" (assignment_expression "local_58 = pppppppuVar28[2]" identifier = (subscript_expression "pppppppuVar28[2]" identifier [ number_literal ])) ;) (expression_statement "local_54 = pppppppuVar28[3];" (assignment_expression "local_54 = pppppppuVar28[3]" identifier = (subscript_expression "pppppppuVar28[3]" identifier [ number_literal ])) ;) (expression_statement "local_50 = pppppppuVar28[4];" (assignment_expression "local_50 = pppppppuVar28[4]" identifier = (subscript_expression "pppppppuVar28[4]" identifier [ number_literal ])) ;) (expression_statement "local_4c = pppppppuVar28[5];" (assignment_expression "local_4c = pppppppuVar28[5]" identifier = (subscript_expression "pppppppuVar28[5]" identifier [ number_literal ])) ;) (expression_statement "local_48 = pppppppuVar28[6];" (assignment_expression "local_48 = pppppppuVar28[6]" identifier = (subscript_expression "pppppppuVar28[6]" identifier [ number_literal ])) ;) (expression_statement "local_44 = pppppppuVar28[7];" (assignment_expression "local_44 = pppppppuVar28[7]" identifier = (subscript_expression "pppppppuVar28[7]" identifier [ number_literal ])) ;) (expression_statement "local_40 = pppppppuVar28[8];" (assignment_expression "local_40 = pppppppuVar28[8]" identifier = (subscript_expression "pppppppuVar28[8]" identifier [ number_literal ])) ;) (expression_statement "local_3c = pppppppuVar28[9];" (assignment_expression "local_3c = pppppppuVar28[9]" identifier = (subscript_expression "pppppppuVar28[9]" identifier [ number_literal ])) ;) (expression_statement "local_38 = pppppppuVar28[10];" (assignment_expression "local_38 = pppppppuVar28[10]" identifier = (subscript_expression "pppppppuVar28[10]" identifier [ number_literal ])) ;) (expression_statement "local_34 = pppppppuVar28[0xb];" (assignment_expression "local_34 = pppppppuVar28[0xb]" identifier = (subscript_expression "pppppppuVar28[0xb]" identifier [ number_literal ])) ;) (expression_statement "local_30 = pppppppuVar28[0xc];" (assignment_expression "local_30 = pppppppuVar28[0xc]" identifier = (subscript_expression "pppppppuVar28[0xc]" identifier [ number_literal ])) ;) (expression_statement "local_2c = pppppppuVar28[0xd];" (assignment_expression "local_2c = pppppppuVar28[0xd]" identifier = (subscript_expression "pppppppuVar28[0xd]" identifier [ number_literal ])) ;) (expression_statement "local_28 = pppppppuVar28[0xe];" (assignment_expression "local_28 = pppppppuVar28[0xe]" identifier = (subscript_expression "pppppppuVar28[0xe]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21 = pppppppuVar28[0xf];" (assignment_expression "ppppppuVar21 = pppppppuVar28[0xf]" identifier = (subscript_expression "pppppppuVar28[0xf]" identifier [ number_literal ])) ;) (expression_statement "local_6c = pppppppuVar22;" (assignment_expression "local_6c = pppppppuVar22" identifier = identifier) ;) (expression_statement "*(uint *********)(puVar24 + -0xc) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0xc) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0xc)" * (cast_expression "(uint *********)(puVar24 + -0xc)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_5c = local_140;" (assignment_expression "local_5c = local_140" identifier = identifier) ;) (expression_statement "local_24 = ppppppuVar21;" (assignment_expression "local_24 = ppppppuVar21" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3bee;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3bee" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000a10f0();" (call_expression "FUN_000a10f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_18;" (assignment_expression "pppppppuVar29 = extraout_ECX_18" identifier = identifier) ;) (if_statement "if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }" if (parenthesized_expression "(local_84 != local_194)" ( (binary_expression "local_84 != local_194" identifier != identifier) )) (compound_statement "{\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3c0b" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_19;" (assignment_expression "pppppppuVar29 = extraout_ECX_19" identifier = identifier) ;) })) (expression_statement "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;" (assignment_expression "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2" (subscript_expression "param_1[0xe][(int)pppppppuVar22]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)0x2" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2]" identifier [ (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1]" identifier [ (binary_expression "(int)pppppppuVar22 * 2 + 1" (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) })) }) (else_clause "else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" else (if_statement "if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" if (parenthesized_expression "(local_124 == (uint *******)0x0)" ( (binary_expression "local_124 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }" { (expression_statement "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;" (assignment_expression "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0" (subscript_expression "param_1[0xe][(int)pppppppuVar22]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2]" identifier [ (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1]" identifier [ (binary_expression "(int)pppppppuVar22 * 2 + 1" (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) }) (else_clause "else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" else (compound_statement "{\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" { (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0x14;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0x14" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3a12;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3a12" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppppuVar14 = (uint ****)FUN_0017ebf0();" (assignment_expression "ppppuVar14 = (uint ****)FUN_0017ebf0()" identifier = (cast_expression "(uint ****)FUN_0017ebf0()" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (call_expression "FUN_0017ebf0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*ppppuVar14 = (uint ***)0x0;" (assignment_expression "*ppppuVar14 = (uint ***)0x0" (pointer_expression "*ppppuVar14" * identifier) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "ppppuVar14[1] = (uint ***)0x0;" (assignment_expression "ppppuVar14[1] = (uint ***)0x0" (subscript_expression "ppppuVar14[1]" identifier [ number_literal ]) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "ppppuVar14[2] = (uint ***)0x0;" (assignment_expression "ppppuVar14[2] = (uint ***)0x0" (subscript_expression "ppppuVar14[2]" identifier [ number_literal ]) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "ppppuVar14[3] = (uint ***)0x0;" (assignment_expression "ppppuVar14[3] = (uint ***)0x0" (subscript_expression "ppppuVar14[3]" identifier [ number_literal ]) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "ppppuVar14[4] = (uint ***)0x0;" (assignment_expression "ppppuVar14[4] = (uint ***)0x0" (subscript_expression "ppppuVar14[4]" identifier [ number_literal ]) = (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (if_statement "if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }" if (parenthesized_expression "(param_1[10] <= pppppppuVar22)" ( (binary_expression "param_1[10] <= pppppppuVar22" (subscript_expression "param_1[10]" identifier [ number_literal ]) <= identifier) )) (compound_statement "{\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar32;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar32" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x37296;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x37296" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x37296" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x541;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x541" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);" (assignment_expression "*(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6)" (pointer_expression "*(byte **)(puVar24 + -0x10)" * (cast_expression "(byte **)(puVar24 + -0x10)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (cast_expression "(byte *)((int)pppppppuVar22 + -0xe7fe6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppuVar22 + -0xe7fe6)" ( (binary_expression "(int)pppppppuVar22 + -0xe7fe6" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa44c8;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa44c8" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "(*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;" (assignment_expression "(*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14" (subscript_expression "(*param_1[0x11])[(int)pppppppuVar22]" (parenthesized_expression "(*param_1[0x11])" ( (pointer_expression "*param_1[0x11]" * (subscript_expression "param_1[0x11]" identifier [ number_literal ])) )) [ (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) (expression_statement "*(uint *****)(puVar24 + -0xc) = ppppuVar14;" (assignment_expression "*(uint *****)(puVar24 + -0xc) = ppppuVar14" (pointer_expression "*(uint *****)(puVar24 + -0xc)" * (cast_expression "(uint *****)(puVar24 + -0xc)" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_13c;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_13c" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x18) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x1c) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x1c) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x1c)" * (cast_expression "(uint ********)(puVar24 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x20) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x20) = param_3" (pointer_expression "*(int *)(puVar24 + -0x20)" * (cast_expression "(int *)(puVar24 + -0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x24) = 0xa3a70;" (assignment_expression "*(undefined4 *)(puVar24 + -0x24) = 0xa3a70" (pointer_expression "*(undefined4 *)(puVar24 + -0x24)" * (cast_expression "(undefined4 *)(puVar24 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pppppuVar15 = (uint *****)FUN_0008a810();" (assignment_expression "pppppuVar15 = (uint *****)FUN_0008a810()" identifier = (cast_expression "(uint *****)FUN_0008a810()" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (call_expression "FUN_0008a810()" identifier (argument_list "()" ( ))))) ;) (expression_statement "param_1[0xe][(int)pppppppuVar22] = pppppuVar15;" (assignment_expression "param_1[0xe][(int)pppppppuVar22] = pppppuVar15" (subscript_expression "param_1[0xe][(int)pppppppuVar22]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2]" identifier [ (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1]" identifier [ (binary_expression "(int)pppppppuVar22 * 2 + 1" (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_16;" (assignment_expression "pppppppuVar29 = extraout_ECX_16" identifier = identifier) ;) }))))) })) (expression_statement "local_12c = local_12c + 1;" (assignment_expression "local_12c = local_12c + 1" identifier = (binary_expression "local_12c + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_dc != local_12c)" ( (binary_expression "local_dc != local_12c" identifier != identifier) )) ;) })) }) (else_clause "else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" else (if_statement "if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_e0 != local_dc)" ( (binary_expression "local_e0 != local_dc" identifier != identifier) )) (compound_statement "{\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x76c;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x76c" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x375d2" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4525;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4525" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })))) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (if_statement "if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "(local_136 == '\0')" ( (binary_expression "local_136 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }" { (if_statement "if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }" if (parenthesized_expression "(local_c8 != local_c4)" ( (binary_expression "local_c8 != local_c4" identifier != identifier) )) (compound_statement "{\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }" { (expression_statement "local_128 = 0;" (assignment_expression "local_128 = 0" identifier = number_literal) ;) (expression_statement "local_12c = local_17c;" (assignment_expression "local_12c = local_17c" identifier = identifier) ;) (expression_statement "piVar11 = local_c8;" (assignment_expression "piVar11 = local_c8" identifier = identifier) ;) (do_statement "do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);" do (compound_statement "{\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          }" { (expression_statement "iVar19 = *piVar11;" (assignment_expression "iVar19 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_15c[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = local_158[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (subscript_expression "local_158[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(int *)(puVar24 + -0x18) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x18) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x18)" * (cast_expression "(int *)(puVar24 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = local_128;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = local_128" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x20)" * (cast_expression "(uint ********)(puVar24 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x24) = local_164;" (assignment_expression "*(uint *******)(puVar24 + -0x24) = local_164" (pointer_expression "*(uint *******)(puVar24 + -0x24)" * (cast_expression "(uint *******)(puVar24 + -0x24)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x28) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x28) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x28)" * (cast_expression "(uint ********)(puVar24 + -0x28)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x28)" ( (binary_expression "puVar24 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x2c) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -0x2c) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -0x2c)" * (cast_expression "(undefined4 *)(puVar24 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x2c)" ( (binary_expression "puVar24 + -0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar24 + -0x30) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x30) = param_3" (pointer_expression "*(int *)(puVar24 + -0x30)" * (cast_expression "(int *)(puVar24 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x30)" ( (binary_expression "puVar24 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa3cc5" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" * (cast_expression "(undefined4 *)(puVar24 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x34)" ( (binary_expression "puVar24 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0008e680();" (call_expression "FUN_0008e680()" identifier (argument_list "()" ( ))) ;) (expression_statement "piVar11 = piVar11 + 1;" (assignment_expression "piVar11 = piVar11 + 1" identifier = (binary_expression "piVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_c4 != piVar11)" ( (binary_expression "local_c4 != piVar11" identifier != identifier) )) ;) })) (if_statement "if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }" if (parenthesized_expression "(local_b8 != local_bc)" ( (binary_expression "local_b8 != local_bc" identifier != identifier) )) (compound_statement "{\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }" { (expression_statement "local_128 = 0;" (assignment_expression "local_128 = 0" identifier = number_literal) ;) (expression_statement "local_12c = local_17c;" (assignment_expression "local_12c = local_17c" identifier = identifier) ;) (expression_statement "piVar11 = local_bc;" (assignment_expression "piVar11 = local_bc" identifier = identifier) ;) (do_statement "do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);" do (compound_statement "{\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          }" { (expression_statement "puVar8 = local_158;" (assignment_expression "puVar8 = local_158" identifier = identifier) ;) (expression_statement "iVar19 = *piVar11;" (assignment_expression "iVar19 = *piVar11" identifier = (pointer_expression "*piVar11" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_15c[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (subscript_expression "puVar8[iVar19]" identifier [ identifier ])) ;) (expression_statement "*(int *)(puVar24 + -0x18) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x18) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x18)" * (cast_expression "(int *)(puVar24 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = local_128;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = local_128" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x20)" * (cast_expression "(uint ********)(puVar24 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x24) = local_164;" (assignment_expression "*(uint *******)(puVar24 + -0x24) = local_164" (pointer_expression "*(uint *******)(puVar24 + -0x24)" * (cast_expression "(uint *******)(puVar24 + -0x24)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x28) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x28) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x28)" * (cast_expression "(uint ********)(puVar24 + -0x28)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x28)" ( (binary_expression "puVar24 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x2c) = 1;" (assignment_expression "*(undefined4 *)(puVar24 + -0x2c) = 1" (pointer_expression "*(undefined4 *)(puVar24 + -0x2c)" * (cast_expression "(undefined4 *)(puVar24 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x2c)" ( (binary_expression "puVar24 + -0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar24 + -0x30) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x30) = param_3" (pointer_expression "*(int *)(puVar24 + -0x30)" * (cast_expression "(int *)(puVar24 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x30)" ( (binary_expression "puVar24 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa3d3d" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" * (cast_expression "(undefined4 *)(puVar24 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x34)" ( (binary_expression "puVar24 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0008e680();" (call_expression "FUN_0008e680()" identifier (argument_list "()" ( ))) ;) (expression_statement "piVar11 = piVar11 + 1;" (assignment_expression "piVar11 = piVar11 + 1" identifier = (binary_expression "piVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_b8 != piVar11)" ( (binary_expression "local_b8 != piVar11" identifier != identifier) )) ;) })) }) (else_clause "else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" else (if_statement "if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" if (parenthesized_expression "((local_c8 != local_c4) || (local_b8 != local_bc))" ( (binary_expression "(local_c8 != local_c4) || (local_b8 != local_bc)" (parenthesized_expression "(local_c8 != local_c4)" ( (binary_expression "local_c8 != local_c4" identifier != identifier) )) || (parenthesized_expression "(local_b8 != local_bc)" ( (binary_expression "local_b8 != local_bc" identifier != identifier) ))) )) (compound_statement "{\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x7a0;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x7a0" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "pppppppuVar22 + -0x375d2" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4506;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4506" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })))) (if_statement "if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }" { (expression_statement "iVar19 = *param_4;" (assignment_expression "iVar19 = *param_4" identifier = (pointer_expression "*param_4" * identifier)) ;) (if_statement "if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }" { (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3d72;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3d72" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005cea0();" (call_expression "FUN_0005cea0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0xc;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0xc" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3d7c" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180780();" (call_expression "FUN_00180780()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar19 = param_4[1];" (assignment_expression "iVar19 = param_4[1]" identifier = (subscript_expression "param_4[1]" identifier [ number_literal ])) ;) (expression_statement "*param_4 = 0;" (assignment_expression "*param_4 = 0" (pointer_expression "*param_4" * identifier) = number_literal) ;) (if_statement "if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }" { (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3da0;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3da0" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005cea0();" (call_expression "FUN_0005cea0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0xc;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0xc" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" * (cast_expression "(int *)(puVar24 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3daa;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3daa" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180780();" (call_expression "FUN_00180780()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }" else (compound_statement "{\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }" { (if_statement "if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }" if (parenthesized_expression "(*local_190 != (uint ******)0x0)" ( (binary_expression "*local_190 != (uint ******)0x0" (pointer_expression "*local_190" * identifier) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }" { (expression_statement "*(uint *******)(puVar24 + -0x10) = *local_190;" (assignment_expression "*(uint *******)(puVar24 + -0x10) = *local_190" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "*local_190" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa282c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa282c" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }" if (parenthesized_expression "(local_190[1] != (uint ******)0x0)" ( (binary_expression "local_190[1] != (uint ******)0x0" (subscript_expression "local_190[1]" identifier [ number_literal ]) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }" { (expression_statement "*(uint *******)(puVar24 + -0x10) = local_190[1];" (assignment_expression "*(uint *******)(puVar24 + -0x10) = local_190[1]" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_190[1]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa284b;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa284b" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }" if (parenthesized_expression "(local_190[3] != (uint ******)0x0)" ( (binary_expression "local_190[3] != (uint ******)0x0" (subscript_expression "local_190[3]" identifier [ number_literal ]) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }" { (expression_statement "*(uint *******)(puVar24 + -0x10) = local_190[3];" (assignment_expression "*(uint *******)(puVar24 + -0x10) = local_190[3]" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_190[3]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa286a;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa286a" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }" if (parenthesized_expression "(local_190[6] != (uint ******)0x0)" ( (binary_expression "local_190[6] != (uint ******)0x0" (subscript_expression "local_190[6]" identifier [ number_literal ]) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }" { (expression_statement "*(uint *******)(puVar24 + -0x10) = local_190[6];" (assignment_expression "*(uint *******)(puVar24 + -0x10) = local_190[6]" (pointer_expression "*(uint *******)(puVar24 + -0x10)" * (cast_expression "(uint *******)(puVar24 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (subscript_expression "local_190[6]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2889;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2889" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "param_1[0x15] = (uint ******)0x0;" (assignment_expression "param_1[0x15] = (uint ******)0x0" (subscript_expression "param_1[0x15]" identifier [ number_literal ]) = (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) }))) }) (else_clause "else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }" else (compound_statement "{\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }" { (expression_statement "local_ec = local_134;" (assignment_expression "local_ec = local_134" identifier = identifier) ;) (expression_statement "ppppppuVar21 = (uint ******)local_160[0x10];" (assignment_expression "ppppppuVar21 = (uint ******)local_160[0x10]" identifier = (cast_expression "(uint ******)local_160[0x10]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "local_160[0x10]" identifier [ number_literal ]))) ;) (expression_statement "local_124 = (uint *******)local_160[0x11];" (assignment_expression "local_124 = (uint *******)local_160[0x11]" identifier = (cast_expression "(uint *******)local_160[0x11]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_160[0x11]" identifier [ number_literal ]))) ;) (if_statement "if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }" if (parenthesized_expression "(ppppppuVar21 < local_148)" ( (binary_expression "ppppppuVar21 < local_148" identifier < identifier) )) (compound_statement "{\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }" { (expression_statement "local_16c = (uint *******)0x0;" (assignment_expression "local_16c = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "local_168 = 0;" (assignment_expression "local_168 = 0" identifier = number_literal) ;) (expression_statement "local_1a0 = local_120 + 0x122;" (assignment_expression "local_1a0 = local_120 + 0x122" identifier = (binary_expression "local_120 + 0x122" identifier + number_literal)) ;) (expression_statement "local_1a4 = local_120 + 0x122;" (assignment_expression "local_1a4 = local_120 + 0x122" identifier = (binary_expression "local_120 + 0x122" identifier + number_literal)) ;) (expression_statement "puVar26 = auStack_1ac;" (assignment_expression "puVar26 = auStack_1ac" identifier = identifier) ;) (do_statement "do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);" do (compound_statement "{\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        }" { (expression_statement "local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);" (assignment_expression "local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144)" identifier = (cast_expression "(uint *******)((int)ppppppuVar21 + (int)local_144)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppuVar21 + (int)local_144)" ( (binary_expression "(int)ppppppuVar21 + (int)local_144" (cast_expression "(int)ppppppuVar21" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_144" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_ec = local_134;" (assignment_expression "local_ec = local_134" identifier = identifier) ;) (if_statement "if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }" { (expression_statement "*(int *)(puVar26 + -4) = param_2;" (assignment_expression "*(int *)(puVar26 + -4) = param_2" (pointer_expression "*(int *)(puVar26 + -4)" * (cast_expression "(int *)(puVar26 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -8) = local_f0;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_f0" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2406;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2406" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_000925b0();" (assignment_expression "cVar7 = FUN_000925b0()" identifier = (call_expression "FUN_000925b0()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar33 = cVar7 == '\0';" (assignment_expression "bVar33 = cVar7 == '\0'" identifier = (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ;) (expression_statement "bVar35 = cVar7 == '\x01';" (assignment_expression "bVar35 = cVar7 == '\x01'" identifier = (binary_expression "cVar7 == '\x01'" identifier == (char_literal "'\x01'" ' escape_sequence '))) ;) (if_statement "if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }" { (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "bVar35 = (char)local_140 == '\0';" (assignment_expression "bVar35 = (char)local_140 == '\0'" identifier = (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }" { (expression_statement "*(undefined4 *)(puVar26 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar26 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar26 + -4)" * (cast_expression "(undefined4 *)(puVar26 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa4433;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa4433" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';" (assignment_expression "bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0'" identifier = (binary_expression "*(char *)((int)(*local_13c)[2] + 0x1a25) == '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x1a25)" * (cast_expression "(char *)((int)(*local_13c)[2] + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(*local_13c)[2] + 0x1a25)" ( (binary_expression "(int)(*local_13c)[2] + 0x1a25" (cast_expression "(int)(*local_13c)[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }" { (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)local_f0 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)local_f0 >> 5) * 4" (parenthesized_expression "((uint)local_f0 >> 5)" ( (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) )))) ;) (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)local_f0 & 0x1f)" number_literal << (parenthesized_expression "((byte)local_f0 & 0x1f)" ( (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) (expression_statement "bVar35 = *puVar2 == 0;" (assignment_expression "bVar35 = *puVar2 == 0" identifier = (binary_expression "*puVar2 == 0" (pointer_expression "*puVar2" * identifier) == number_literal)) ;) })) })) })) (expression_statement "iVar19 = 0x10;" (assignment_expression "iVar19 = 0x10" identifier = number_literal) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdee8f);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdee8f)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdee8f)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdee8f)" ( (binary_expression "(int)local_120 + -0xdee8f" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);" do (compound_statement "{\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            }" { (expression_statement "pbVar30 = pbVar31;" (assignment_expression "pbVar30 = pbVar31" identifier = identifier) ;) (if_statement "if (iVar19 == 0) break;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar19 = iVar19 + -1;" (assignment_expression "iVar19 = iVar19 + -1" identifier = (binary_expression "iVar19 + -1" identifier + number_literal)) ;) (expression_statement "pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar22 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar22 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar30;" (assignment_expression "pbVar31 = pbVar30" identifier = identifier) ;) }) while (parenthesized_expression "(bVar35)" ( identifier )) ;) (if_statement "if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }" if (parenthesized_expression "((!bVar33 && !bVar35) == bVar33)" ( (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" ( (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" ! identifier) && (unary_expression "!bVar35" ! identifier)) )) == identifier) )) (compound_statement "{\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }" { (expression_statement "local_137 = 1;" (assignment_expression "local_137 = 1" identifier = number_literal) ;) (expression_statement "local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);" (assignment_expression "local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c)" identifier = (cast_expression "(uint *******)((uint)local_ec[2] | (uint)local_16c)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_ec[2] | (uint)local_16c)" ( (binary_expression "(uint)local_ec[2] | (uint)local_16c" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) | (cast_expression "(uint)local_16c" ( (type_descriptor "uint" type_identifier) ) identifier)) )))) ;) (expression_statement "local_168 = (uint)local_ec[3] | local_168;" (assignment_expression "local_168 = (uint)local_ec[3] | local_168" identifier = (binary_expression "(uint)local_ec[3] | local_168" (cast_expression "(uint)local_ec[3]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[3]" identifier [ number_literal ])) | identifier)) ;) (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)local_f0 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)local_f0 >> 5) * 4" (parenthesized_expression "((uint)local_f0 >> 5)" ( (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) )))) ;) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)local_f0 & 0x1f)" number_literal << (parenthesized_expression "((byte)local_f0 & 0x1f)" ( (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) })) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2497;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2497" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_00091ac0();" (assignment_expression "cVar7 = FUN_00091ac0()" identifier = (call_expression "FUN_00091ac0()" identifier (argument_list "()" ( )))) ;) (expression_statement "ppppppuVar21 = *local_13c;" (assignment_expression "ppppppuVar21 = *local_13c" identifier = (pointer_expression "*local_13c" * identifier)) ;) (if_statement "if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }" if (parenthesized_expression "((cVar7 == '\x01') && ((char)local_140 == '\0'))" ( (binary_expression "(cVar7 == '\x01') && ((char)local_140 == '\0')" (parenthesized_expression "(cVar7 == '\x01')" ( (binary_expression "cVar7 == '\x01'" identifier == (char_literal "'\x01'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_140 == '\0')" ( (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }" { (expression_statement "pppppuVar15 = ppppppuVar21[2];" (assignment_expression "pppppuVar15 = ppppppuVar21[2]" identifier = (subscript_expression "ppppppuVar21[2]" identifier [ number_literal ])) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }" { (expression_statement "*(byte **)(puVar26 + -4) = pbVar30;" (assignment_expression "*(byte **)(puVar26 + -4) = pbVar30" (pointer_expression "*(byte **)(puVar26 + -4)" * (cast_expression "(byte **)(puVar26 + -4)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa444f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa444f" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }" if (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x1a25) == '\0')" ( (binary_expression "*(char *)((int)pppppuVar15 + 0x1a25) == '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x1a25)" * (cast_expression "(char *)((int)pppppuVar15 + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x1a25)" ( (binary_expression "(int)pppppuVar15 + 0x1a25" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }" { (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)local_f0 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)local_f0 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)local_f0 >> 5) * 4" (parenthesized_expression "((uint)local_f0 >> 5)" ( (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) )))) ;) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)local_f0 & 0x1f)" number_literal << (parenthesized_expression "((byte)local_f0 & 0x1f)" ( (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) })) })) (expression_statement "pppppuVar15 = ppppppuVar21[3];" (assignment_expression "pppppuVar15 = ppppppuVar21[3]" identifier = (subscript_expression "ppppppuVar21[3]" identifier [ number_literal ])) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }" { (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371cf;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371cf" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371cf" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x69;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x69" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa4314;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa4314" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "pppuVar4 = pppppuVar15[1][0x14];" (assignment_expression "pppuVar4 = pppppuVar15[1][0x14]" identifier = (subscript_expression "pppppuVar15[1][0x14]" (subscript_expression "pppppuVar15[1]" identifier [ number_literal ]) [ number_literal ])) ;) (expression_statement "bVar33 = pppuVar4 == (uint ***)0x0;" (assignment_expression "bVar33 = pppuVar4 == (uint ***)0x0" identifier = (binary_expression "pppuVar4 == (uint ***)0x0" identifier == (cast_expression "(uint ***)0x0" ( (type_descriptor "uint ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal))) ;) (expression_statement "pppppppuVar29 = local_f0;" (assignment_expression "pppppppuVar29 = local_f0" identifier = identifier) ;) (if_statement "if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }" if (parenthesized_expression "(bVar33)" ( identifier )) (compound_statement "{\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }" { (labeled_statement "LAB_000a2b98:\n              bVar35 = false;" statement_identifier : (expression_statement "bVar35 = false;" (assignment_expression "bVar35 = false" identifier = false) ;)) (expression_statement "iVar19 = 0x10;" (assignment_expression "iVar19 = 0x10" identifier = number_literal) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdd173);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdd173)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdd173)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdd173)" ( (binary_expression "(int)local_120 + -0xdd173" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);" do (compound_statement "{\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              }" { (if_statement "if (iVar19 == 0) break;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar19 = iVar19 + -1;" (assignment_expression "iVar19 = iVar19 + -1" identifier = (binary_expression "iVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar22 < *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar22 == *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (if_statement "if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;" if (parenthesized_expression "((!bVar35 && !bVar33) == bVar35)" ( (binary_expression "(!bVar35 && !bVar33) == bVar35" (parenthesized_expression "(!bVar35 && !bVar33)" ( (binary_expression "!bVar35 && !bVar33" (unary_expression "!bVar35" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_000a24fe;" goto statement_identifier ;)) (expression_statement "bVar33 = local_124 == (uint *******)0x7;" (assignment_expression "bVar33 = local_124 == (uint *******)0x7" identifier = (binary_expression "local_124 == (uint *******)0x7" identifier == (cast_expression "(uint *******)0x7" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ;) (if_statement "if (!bVar33) goto LAB_000a2522;" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (goto_statement "goto LAB_000a2522;" goto statement_identifier ;)) (labeled_statement "LAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;" statement_identifier : (expression_statement "bVar35 = local_124 < (uint *******)0x7;" (assignment_expression "bVar35 = local_124 < (uint *******)0x7" identifier = (binary_expression "local_124 < (uint *******)0x7" identifier < (cast_expression "(uint *******)0x7" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ;)) (expression_statement "iVar19 = 0x13;" (assignment_expression "iVar19 = 0x13" identifier = number_literal) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_120 + -0x37b91;" (assignment_expression "pppppppuVar27 = local_120 + -0x37b91" identifier = (binary_expression "local_120 + -0x37b91" identifier + number_literal)) ;) (do_statement "do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);" do (compound_statement "{\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              }" { (if_statement "if (iVar19 == 0) break;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar19 = iVar19 + -1;" (assignment_expression "iVar19 = iVar19 + -1" identifier = (binary_expression "iVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27" identifier = (binary_expression "*(byte *)pppppppuVar22 < *(byte *)pppppppuVar27" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*(byte *)pppppppuVar27" * (cast_expression "(byte *)pppppppuVar27" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27" identifier = (binary_expression "*(byte *)pppppppuVar22 == *(byte *)pppppppuVar27" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*(byte *)pppppppuVar27" * (cast_expression "(byte *)pppppppuVar27" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)))) ;) (expression_statement "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar27 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar27 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar27 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (if_statement "if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }" if (parenthesized_expression "((!bVar35 && !bVar33) != bVar35)" ( (binary_expression "(!bVar35 && !bVar33) != bVar35" (parenthesized_expression "(!bVar35 && !bVar33)" ( (binary_expression "!bVar35 && !bVar33" (unary_expression "!bVar35" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) != identifier) )) (compound_statement "{\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }" { (expression_statement "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;" (assignment_expression "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" identifier = (binary_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" (parenthesized_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4))" ( (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f)" number_literal << (parenthesized_expression "((byte)pppppppuVar29 & 0x1f)" ( (binary_expression "(byte)pppppppuVar29 & 0x1f" (cast_expression "(byte)pppppppuVar29" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) & (pointer_expression "*(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" * (cast_expression "(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((uint)pppppppuVar29 >> 5)" ( (binary_expression "(uint)pppppppuVar29 >> 5" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) ))))) )) != number_literal)) ;) (expression_statement "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);" (assignment_expression "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" identifier = (cast_expression "(uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" identifier (argument_list "((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" ( (call_expression "(uint3)((uint)pppppppuVar29 >> 0xd)" (parenthesized_expression "(uint3)" ( identifier )) (argument_list "((uint)pppppppuVar29 >> 0xd)" ( (binary_expression "(uint)pppppppuVar29 >> 0xd" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))) , identifier ))))) ;) (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" identifier = identifier) ;) (if_statement "if (bVar33) goto LAB_000a2c18;" if (parenthesized_expression "(bVar33)" ( identifier )) (goto_statement "goto LAB_000a2c18;" goto statement_identifier ;)) (labeled_statement "LAB_000a2551:\n                bVar33 = false;" statement_identifier : (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;)) (expression_statement "bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;" (assignment_expression "bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0" identifier = (binary_expression "(*(byte *)((int)local_ec + 9) & 2) == 0" (parenthesized_expression "(*(byte *)((int)local_ec + 9) & 2)" ( (binary_expression "*(byte *)((int)local_ec + 9) & 2" (pointer_expression "*(byte *)((int)local_ec + 9)" * (cast_expression "(byte *)((int)local_ec + 9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_ec + 9)" ( (binary_expression "(int)local_ec + 9" (cast_expression "(int)local_ec" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) )) == number_literal)) ;) (expression_statement "pppppppuVar29 = pppppppuVar27;" (assignment_expression "pppppppuVar29 = pppppppuVar27" identifier = identifier) ;) (if_statement "if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }" { (expression_statement "pppppppuVar29 = (uint *******)0xd;" (assignment_expression "pppppppuVar29 = (uint *******)0xd" identifier = (cast_expression "(uint *******)0xd" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdd163);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdd163)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdd163)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdd163)" ( (binary_expression "(int)local_120 + -0xdd163" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);" do (compound_statement "{\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar28 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar35)" ( identifier )) ;) (if_statement "if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }" if (parenthesized_expression "((!bVar33 && !bVar35) == bVar33)" ( (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" ( (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" ! identifier) && (unary_expression "!bVar35" ! identifier)) )) == identifier) )) (compound_statement "{\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }" { (expression_statement "*(uint *********)(puVar26 + -0x10) = &local_ec;" (assignment_expression "*(uint *********)(puVar26 + -0x10) = &local_ec" (pointer_expression "*(uint *********)(puVar26 + -0x10)" * (cast_expression "(uint *********)(puVar26 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_ec" & identifier)) ;) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x14)" * (cast_expression "(uint ********)(puVar26 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x18) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar26 + -0x18) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar26 + -0x18)" * (cast_expression "(uint ********)(puVar26 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x1c) = param_3;" (assignment_expression "*(int *)(puVar26 + -0x1c) = param_3" (pointer_expression "*(int *)(puVar26 + -0x1c)" * (cast_expression "(int *)(puVar26 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x20) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x20) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x20)" * (cast_expression "(uint ********)(puVar26 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa352c;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa352c" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" * (cast_expression "(undefined4 *)(puVar26 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_0009cac0();" (assignment_expression "cVar7 = FUN_0009cac0()" identifier = (call_expression "FUN_0009cac0()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_11;" (assignment_expression "pppppppuVar29 = extraout_ECX_11" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (cVar7 == '\0') goto LAB_000a2c3a;" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;)) })) })) (labeled_statement "LAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);" statement_identifier : (expression_statement "iVar19 = *(int *)(param_3 + 0x1d0);" (assignment_expression "iVar19 = *(int *)(param_3 + 0x1d0)" identifier = (pointer_expression "*(int *)(param_3 + 0x1d0)" * (cast_expression "(int *)(param_3 + 0x1d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x1d0)" ( (binary_expression "param_3 + 0x1d0" identifier + number_literal) ))))) ;)) (if_statement "if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;" if (parenthesized_expression "((iVar19 == 0) || ((char)pppppppuVar22 != '\0'))" ( (binary_expression "(iVar19 == 0) || ((char)pppppppuVar22 != '\0')" (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) || (parenthesized_expression "((char)pppppppuVar22 != '\0')" ( (binary_expression "(char)pppppppuVar22 != '\0'" (cast_expression "(char)pppppppuVar22" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000a22b0;" goto statement_identifier ;)) (labeled_statement "LAB_000a259c:\n                pppppppuVar22 = local_120;" statement_identifier : (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;)) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa25b0;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa25b0" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_00066600();" (assignment_expression "cVar7 = FUN_00066600()" identifier = (call_expression "FUN_00066600()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;) (expression_statement "pppppppuVar29 = extraout_ECX_00;" (assignment_expression "pppppppuVar29 = extraout_ECX_00" identifier = identifier) ;) (if_statement "if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }" if (parenthesized_expression "(cVar7 != '\0')" ( (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }" { (expression_statement "local_150 = local_ec[9];" (assignment_expression "local_150 = local_ec[9]" identifier = (subscript_expression "local_ec[9]" identifier [ number_literal ])) ;) (expression_statement "local_154 = (uint *******)local_ec[8];" (assignment_expression "local_154 = (uint *******)local_ec[8]" identifier = (cast_expression "(uint *******)local_ec[8]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_ec[8]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar21 = param_1[0xd];" (assignment_expression "ppppppuVar21 = param_1[0xd]" identifier = (subscript_expression "param_1[0xd]" identifier [ number_literal ])) ;) (if_statement "if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }" if (parenthesized_expression "(ppppppuVar21 != (uint ******)0x0)" ( (binary_expression "ppppppuVar21 != (uint ******)0x0" identifier != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }" { (expression_statement "ppppppuVar17 = (uint ******)ppppppuVar21[2];" (assignment_expression "ppppppuVar17 = (uint ******)ppppppuVar21[2]" identifier = (cast_expression "(uint ******)ppppppuVar21[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar21[2]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar13 = ppppppuVar21 + 1;" (assignment_expression "ppppppuVar13 = ppppppuVar21 + 1" identifier = (binary_expression "ppppppuVar21 + 1" identifier + number_literal)) ;) (if_statement "if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }" if (parenthesized_expression "((uint ******)ppppppuVar21[2] != (uint ******)0x0)" ( (binary_expression "(uint ******)ppppppuVar21[2] != (uint ******)0x0" (cast_expression "(uint ******)ppppppuVar21[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar21[2]" identifier [ number_literal ])) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }" { (do_statement "do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);" do (compound_statement "{\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      }" { (while_statement "while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }" while (parenthesized_expression "(ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4])" ( (comma_expression "ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]" (assignment_expression "ppppppuVar20 = ppppppuVar17" identifier = identifier) , (binary_expression "local_f0 <= ppppppuVar20[4]" identifier <= (subscript_expression "ppppppuVar20[4]" identifier [ number_literal ]))) )) (compound_statement "{\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }" { (expression_statement "ppppppuVar17 = (uint ******)ppppppuVar20[2];" (assignment_expression "ppppppuVar17 = (uint ******)ppppppuVar20[2]" identifier = (cast_expression "(uint ******)ppppppuVar20[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar20[2]" identifier [ number_literal ]))) ;) (expression_statement "ppppppuVar13 = ppppppuVar20;" (assignment_expression "ppppppuVar13 = ppppppuVar20" identifier = identifier) ;) (if_statement "if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;" if (parenthesized_expression "((uint ******)ppppppuVar20[2] == (uint ******)0x0)" ( (binary_expression "(uint ******)ppppppuVar20[2] == (uint ******)0x0" (cast_expression "(uint ******)ppppppuVar20[2]" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppuVar20[2]" identifier [ number_literal ])) == (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_000a260d;" goto statement_identifier ;)) })) (expression_statement "ppppppuVar1 = ppppppuVar20 + 3;" (assignment_expression "ppppppuVar1 = ppppppuVar20 + 3" identifier = (binary_expression "ppppppuVar20 + 3" identifier + number_literal)) ;) (expression_statement "ppppppuVar17 = (uint ******)*ppppppuVar1;" (assignment_expression "ppppppuVar17 = (uint ******)*ppppppuVar1" identifier = (cast_expression "(uint ******)*ppppppuVar1" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar1" * identifier))) ;) (expression_statement "ppppppuVar20 = ppppppuVar13;" (assignment_expression "ppppppuVar20 = ppppppuVar13" identifier = identifier) ;) }) while (parenthesized_expression "((uint ******)*ppppppuVar1 != (uint ******)0x0)" ( (binary_expression "(uint ******)*ppppppuVar1 != (uint ******)0x0" (cast_expression "(uint ******)*ppppppuVar1" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "*ppppppuVar1" * identifier)) != (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) ;) (labeled_statement "LAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }" statement_identifier : (if_statement "if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }" if (parenthesized_expression "((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0))" ( (binary_expression "(ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)" (parenthesized_expression "(ppppppuVar21 + 1 != ppppppuVar20)" ( (binary_expression "ppppppuVar21 + 1 != ppppppuVar20" (binary_expression "ppppppuVar21 + 1" identifier + number_literal) != identifier) )) && (parenthesized_expression "(ppppppuVar20[4] <= local_f0)" ( (binary_expression "ppppppuVar20[4] <= local_f0" (subscript_expression "ppppppuVar20[4]" identifier [ number_literal ]) <= identifier) ))) )) (compound_statement "{\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }" { (expression_statement "local_154 = (uint *******)ppppppuVar20[5];" (assignment_expression "local_154 = (uint *******)ppppppuVar20[5]" identifier = (cast_expression "(uint *******)ppppppuVar20[5]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "ppppppuVar20[5]" identifier [ number_literal ]))) ;) (expression_statement "local_150 = (uint ******)0x0;" (assignment_expression "local_150 = (uint ******)0x0" identifier = (cast_expression "(uint ******)0x0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) }))) })) })) (expression_statement "*(uint *******)(puVar26 + -0xc) = local_150;" (assignment_expression "*(uint *******)(puVar26 + -0xc) = local_150" (pointer_expression "*(uint *******)(puVar26 + -0xc)" * (cast_expression "(uint *******)(puVar26 + -0xc)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_154;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_154" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x14)" * (cast_expression "(uint ********)(puVar26 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x18) = local_f0;" (assignment_expression "*(uint ********)(puVar26 + -0x18) = local_f0" (pointer_expression "*(uint ********)(puVar26 + -0x18)" * (cast_expression "(uint ********)(puVar26 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x1c) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x1c) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x1c)" * (cast_expression "(uint ********)(puVar26 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x20) = iVar19;" (assignment_expression "*(int *)(puVar26 + -0x20) = iVar19" (pointer_expression "*(int *)(puVar26 + -0x20)" * (cast_expression "(int *)(puVar26 + -0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa263f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa263f" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" * (cast_expression "(undefined4 *)(puVar26 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00067350();" (call_expression "FUN_00067350()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_01;" (assignment_expression "pppppppuVar29 = extraout_ECX_01" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) })) (goto_statement "goto LAB_000a22b0;" goto statement_identifier ;) })) (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0xc) = param_3;" (assignment_expression "*(int *)(puVar26 + -0xc) = param_3" (pointer_expression "*(int *)(puVar26 + -0xc)" * (cast_expression "(int *)(puVar26 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa326f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa326f" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0009a280();" (call_expression "FUN_0009a280()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);" (assignment_expression "pppppppuVar22 = (uint *******)((uint)local_f0 >> 5)" identifier = (cast_expression "(uint *******)((uint)local_f0 >> 5)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_f0 >> 5)" ( (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + (int)pppppppuVar22 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + (int)pppppppuVar22 * 4)" ( (binary_expression "(int)local_b0 + (int)pppppppuVar22 * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(int)pppppppuVar22 * 4" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)local_f0 & 0x1f)" number_literal << (parenthesized_expression "((byte)local_f0 & 0x1f)" ( (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) (expression_statement "pppppppuVar29 = local_f0;" (assignment_expression "pppppppuVar29 = local_f0" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) }) (else_clause "else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }" else (compound_statement "{\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }" { (expression_statement "local_154 = local_f0;" (assignment_expression "local_154 = local_f0" identifier = identifier) ;) (expression_statement "*(uint ****)(puVar26 + -0xc) = pppuVar4;" (assignment_expression "*(uint ****)(puVar26 + -0xc) = pppuVar4" (pointer_expression "*(uint ****)(puVar26 + -0xc)" * (cast_expression "(uint ****)(puVar26 + -0xc)" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa24ed;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa24ed" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));" (assignment_expression "iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" identifier = (call_expression "strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" identifier (argument_list "(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" ( (pointer_expression "*(char **)(puVar26 + -0x10)" * (cast_expression "(char **)(puVar26 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar26 + -0xc)" * (cast_expression "(char **)(puVar26 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "bVar33 = iVar19 == 0;" (assignment_expression "bVar33 = iVar19 == 0" identifier = (binary_expression "iVar19 == 0" identifier == number_literal)) ;) (expression_statement "pppppppuVar29 = local_154;" (assignment_expression "pppppppuVar29 = local_154" identifier = identifier) ;) (if_statement "if (!bVar33) goto LAB_000a2b98;" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (goto_statement "goto LAB_000a2b98;" goto statement_identifier ;)) (labeled_statement "LAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);" statement_identifier : (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" identifier = (cast_expression "(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((uint)pppppppuVar29 >> 5)" ( (binary_expression "(uint)pppppppuVar29 >> 5" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) )))) ;)) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f)" (pointer_expression "*puVar2" * identifier) = (binary_expression "*puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f)" (pointer_expression "*puVar2" * identifier) | (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f)" number_literal << (parenthesized_expression "((byte)pppppppuVar29 & 0x1f)" ( (binary_expression "(byte)pppppppuVar29 & 0x1f" (cast_expression "(byte)pppppppuVar29" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))))) ;) (expression_statement "bVar33 = local_124 == (uint *******)0x7;" (assignment_expression "bVar33 = local_124 == (uint *******)0x7" identifier = (binary_expression "local_124 == (uint *******)0x7" identifier == (cast_expression "(uint *******)0x7" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ;) (if_statement "if (bVar33) goto LAB_000a2bcb;" if (parenthesized_expression "(bVar33)" ( identifier )) (goto_statement "goto LAB_000a2bcb;" goto statement_identifier ;)) (labeled_statement "LAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;" statement_identifier : (expression_statement "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;" (assignment_expression "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" identifier = (binary_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" (parenthesized_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4))" ( (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f)" number_literal << (parenthesized_expression "((byte)pppppppuVar29 & 0x1f)" ( (binary_expression "(byte)pppppppuVar29 & 0x1f" (cast_expression "(byte)pppppppuVar29" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) & (pointer_expression "*(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" * (cast_expression "(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" ( (binary_expression "(int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((uint)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((uint)pppppppuVar29 >> 5)" ( (binary_expression "(uint)pppppppuVar29 >> 5" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )) * number_literal)) ))))) )) != number_literal)) ;)) (expression_statement "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);" (assignment_expression "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" identifier = (cast_expression "(uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" identifier (argument_list "((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" ( (call_expression "(uint3)((uint)pppppppuVar29 >> 0xd)" (parenthesized_expression "(uint3)" ( identifier )) (argument_list "((uint)pppppppuVar29 >> 0xd)" ( (binary_expression "(uint)pppppppuVar29 >> 0xd" (cast_expression "(uint)pppppppuVar29" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))) , identifier ))))) ;) (if_statement "if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (compound_statement "{\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }" { (expression_statement "pppppppuVar22 = (uint *******)0x0;" (assignment_expression "pppppppuVar22 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" identifier = identifier) ;) (if_statement "if (local_124 != (uint *******)0x11) goto LAB_000a2551;" if (parenthesized_expression "(local_124 != (uint *******)0x11)" ( (binary_expression "local_124 != (uint *******)0x11" identifier != (cast_expression "(uint *******)0x11" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000a2551;" goto statement_identifier ;)) (expression_statement "*(void ***)(puVar26 + -0x10) = &local_b0;" (assignment_expression "*(void ***)(puVar26 + -0x10) = &local_b0" (pointer_expression "*(void ***)(puVar26 + -0x10)" * (cast_expression "(void ***)(puVar26 + -0x10)" ( (type_descriptor "void ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_b0" & identifier)) ;) (expression_statement "*(uint *******)(puVar26 + -0x14) = local_148;" (assignment_expression "*(uint *******)(puVar26 + -0x14) = local_148" (pointer_expression "*(uint *******)(puVar26 + -0x14)" * (cast_expression "(uint *******)(puVar26 + -0x14)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar26 + -0x18) = local_144;" (assignment_expression "*(uint *******)(puVar26 + -0x18) = local_144" (pointer_expression "*(uint *******)(puVar26 + -0x18)" * (cast_expression "(uint *******)(puVar26 + -0x18)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar26 + -0x1c) = local_160;" (assignment_expression "*(uint *******)(puVar26 + -0x1c) = local_160" (pointer_expression "*(uint *******)(puVar26 + -0x1c)" * (cast_expression "(uint *******)(puVar26 + -0x1c)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x20)" * (cast_expression "(uint ********)(puVar26 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x24) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar26 + -0x24) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar26 + -0x24)" * (cast_expression "(uint ********)(puVar26 + -0x24)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x28) = param_3;" (assignment_expression "*(int *)(puVar26 + -0x28) = param_3" (pointer_expression "*(int *)(puVar26 + -0x28)" * (cast_expression "(int *)(puVar26 + -0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x28)" ( (binary_expression "puVar26 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x2c) = param_2;" (assignment_expression "*(int *)(puVar26 + -0x2c) = param_2" (pointer_expression "*(int *)(puVar26 + -0x2c)" * (cast_expression "(int *)(puVar26 + -0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x2c)" ( (binary_expression "puVar26 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x30) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x30) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x30)" * (cast_expression "(uint ********)(puVar26 + -0x30)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x30)" ( (binary_expression "puVar26 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x34) = 0xa3371;" (assignment_expression "*(undefined4 *)(puVar26 + -0x34) = 0xa3371" (pointer_expression "*(undefined4 *)(puVar26 + -0x34)" * (cast_expression "(undefined4 *)(puVar26 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x34)" ( (binary_expression "puVar26 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_0009e290();" (assignment_expression "cVar7 = FUN_0009e290()" identifier = (call_expression "FUN_0009e290()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_10;" (assignment_expression "pppppppuVar29 = extraout_ECX_10" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (cVar7 == '\0') goto LAB_000a2c3a;" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;)) (expression_statement "pppppppuVar22 = (uint *******)0x0;" (assignment_expression "pppppppuVar22 = (uint *******)0x0" identifier = (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000a2583;" goto statement_identifier ;) })) (labeled_statement "LAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);" statement_identifier : (expression_statement "iVar19 = *(int *)(param_3 + 0x1d0);" (assignment_expression "iVar19 = *(int *)(param_3 + 0x1d0)" identifier = (pointer_expression "*(int *)(param_3 + 0x1d0)" * (cast_expression "(int *)(param_3 + 0x1d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x1d0)" ( (binary_expression "param_3 + 0x1d0" identifier + number_literal) ))))) ;)) (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" identifier = identifier) ;) (if_statement "if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }" { (if_statement "if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;" if (parenthesized_expression "((char)pppppppuVar22 == '\0')" ( (binary_expression "(char)pppppppuVar22 == '\0'" (cast_expression "(char)pppppppuVar22" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a22b0;" goto statement_identifier ;)) }) (else_clause "else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;" else (if_statement "if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;" if (parenthesized_expression "((char)pppppppuVar22 == '\0')" ( (binary_expression "(char)pppppppuVar22 == '\0'" (cast_expression "(char)pppppppuVar22" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a259c;" goto statement_identifier ;)))) }))) (labeled_statement "LAB_000a2c3a:\n            local_f0 = pppppppuVar27;" statement_identifier : (expression_statement "local_f0 = pppppppuVar27;" (assignment_expression "local_f0 = pppppppuVar27" identifier = identifier) ;)) (expression_statement "param_1[0xe][(int)local_f0] = (uint *****)0x0;" (assignment_expression "param_1[0xe][(int)local_f0] = (uint *****)0x0" (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" identifier [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" identifier [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" identifier = identifier) ;) }) (else_clause "else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }" else (compound_statement "{\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }" { (labeled_statement "LAB_000a22b0:\n            puVar24 = puVar26;" statement_identifier : (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" identifier = identifier) ;)) (if_statement "if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }" if (parenthesized_expression "(local_136 != '\0')" ( (binary_expression "local_136 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }" { (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa42f6;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa42f6" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }" if (parenthesized_expression "(*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0')" ( (binary_expression "*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x18b1)" * (cast_expression "(char *)((int)(*local_13c)[2] + 0x18b1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(*local_13c)[2] + 0x18b1)" ( (binary_expression "(int)(*local_13c)[2] + 0x18b1" (cast_expression "(int)(*local_13c)[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }" { (expression_statement "*(uint ********)(puVar26 + -0xc) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa22ee;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa22ee" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_00091d10();" (assignment_expression "cVar7 = FUN_00091d10()" identifier = (call_expression "FUN_00091d10()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }" if (parenthesized_expression "(cVar7 == '\0')" ( (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }" { (expression_statement "*(uint ********)(puVar26 + -8) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x10) = param_3;" (assignment_expression "*(int *)(puVar26 + -0x10) = param_3" (pointer_expression "*(int *)(puVar26 + -0x10)" * (cast_expression "(int *)(puVar26 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2313;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2313" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_0007b5f0();" (assignment_expression "cVar7 = FUN_0007b5f0()" identifier = (call_expression "FUN_0007b5f0()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;" if (parenthesized_expression "((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))" ( (binary_expression "(cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2)" (parenthesized_expression "(cVar7 != '\0')" ( (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((byte *)((int)local_124 + -0xe) < (byte *)0x2)" ( (binary_expression "(byte *)((int)local_124 + -0xe) < (byte *)0x2" (cast_expression "(byte *)((int)local_124 + -0xe)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_124 + -0xe)" ( (binary_expression "(int)local_124 + -0xe" (cast_expression "(int)local_124" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) < (cast_expression "(byte *)0x2" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000a2c68;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }" else (compound_statement "{\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }" { (labeled_statement "LAB_000a2c68:\n                  local_84 = param_1;" statement_identifier : (expression_statement "local_84 = param_1;" (assignment_expression "local_84 = param_1" identifier = identifier) ;)) (expression_statement "local_80 = local_f0;" (assignment_expression "local_80 = local_f0" identifier = identifier) ;) (expression_statement "*(uint *********)(puVar26 + -0xc) = &local_84;" (assignment_expression "*(uint *********)(puVar26 + -0xc) = &local_84" (pointer_expression "*(uint *********)(puVar26 + -0xc)" * (cast_expression "(uint *********)(puVar26 + -0xc)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158)" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" * (cast_expression "(undefined4 *)(puVar26 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(param_2 + 0x158)" * (cast_expression "(undefined4 *)(param_2 + 0x158)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x158)" ( (binary_expression "param_2 + 0x158" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2c8c" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000a0800();" (call_expression "FUN_000a0800()" identifier (argument_list "()" ( ))) ;) }))) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_12c;" (assignment_expression "pppppppuVar27 = local_12c" identifier = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (binary_expression "local_120 + -0x379ae" identifier + number_literal)) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa234c;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa234c" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));" (assignment_expression "sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" identifier = (call_expression "strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" identifier (argument_list "(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" ( (pointer_expression "*(char **)(puVar26 + -0x10)" * (cast_expression "(char **)(puVar26 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar26 + -0xc)" * (cast_expression "(char **)(puVar26 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pppppppuVar29 = extraout_ECX;" (assignment_expression "pppppppuVar29 = extraout_ECX" identifier = identifier) ;) (if_statement "if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }" if (parenthesized_expression "(*(byte *)((int)pppppppuVar27 + sVar9) == 0)" ( (binary_expression "*(byte *)((int)pppppppuVar27 + sVar9) == 0" (pointer_expression "*(byte *)((int)pppppppuVar27 + sVar9)" * (cast_expression "(byte *)((int)pppppppuVar27 + sVar9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppuVar27 + sVar9)" ( (binary_expression "(int)pppppppuVar27 + sVar9" (cast_expression "(int)pppppppuVar27" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) == number_literal) )) (compound_statement "{\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }" { (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" identifier = (cast_expression "(uint *******)&local_84" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_84" & identifier))) ;) (expression_statement "iVar19 = *(int *)(param_2 + 0x158);" (assignment_expression "iVar19 = *(int *)(param_2 + 0x158)" identifier = (pointer_expression "*(int *)(param_2 + 0x158)" * (cast_expression "(int *)(param_2 + 0x158)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x158)" ( (binary_expression "param_2 + 0x158" identifier + number_literal) ))))) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_194 = local_7c;" (assignment_expression "local_194 = local_7c" identifier = identifier) ;) (expression_statement "local_19c = iVar19;" (assignment_expression "local_19c = iVar19" identifier = identifier) ;) (expression_statement "local_184 = local_f0;" (assignment_expression "local_184 = local_f0" identifier = identifier) ;) (expression_statement "local_84 = local_7c;" (assignment_expression "local_84 = local_7c" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3075;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3075" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "sVar9 = strlen(*(char **)(puVar26 + -0x10));" (assignment_expression "sVar9 = strlen(*(char **)(puVar26 + -0x10))" identifier = (call_expression "strlen(*(char **)(puVar26 + -0x10))" identifier (argument_list "(*(char **)(puVar26 + -0x10))" ( (pointer_expression "*(char **)(puVar26 + -0x10)" * (cast_expression "(char **)(puVar26 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) )))) ;) (expression_statement "*(undefined4 *)(puVar26 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar26 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar26 + -4)" * (cast_expression "(undefined4 *)(puVar26 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);" (assignment_expression "*(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28)" (pointer_expression "*(byte **)(puVar26 + -8)" * (cast_expression "(byte **)(puVar26 + -8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (cast_expression "(byte *)(sVar9 + (int)pppppppuVar28)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(sVar9 + (int)pppppppuVar28)" ( (binary_expression "sVar9 + (int)pppppppuVar28" identifier + (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = pppppppuVar28;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = pppppppuVar28" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_178;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_178" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3089;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3089" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004cf80();" (call_expression "FUN_0004cf80()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);" (assignment_expression "pppppppuVar22 = *(uint ********)(iVar19 + 0x4c)" identifier = (pointer_expression "*(uint ********)(iVar19 + 0x4c)" * (cast_expression "(uint ********)(iVar19 + 0x4c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(iVar19 + 0x4c)" ( (binary_expression "iVar19 + 0x4c" identifier + number_literal) ))))) ;) (expression_statement "local_98 = local_184;" (assignment_expression "local_98 = local_184" identifier = identifier) ;) (expression_statement "pppppppuVar27 = (uint *******)(iVar19 + 0x48);" (assignment_expression "pppppppuVar27 = (uint *******)(iVar19 + 0x48)" identifier = (cast_expression "(uint *******)(iVar19 + 0x48)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar19 + 0x48)" ( (binary_expression "iVar19 + 0x48" identifier + number_literal) )))) ;) (expression_statement "local_9c = param_1;" (assignment_expression "local_9c = param_1" identifier = identifier) ;) (expression_statement "local_18c = pppppppuVar27;" (assignment_expression "local_18c = pppppppuVar27" identifier = identifier) ;) (if_statement "if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }" if (parenthesized_expression "(pppppppuVar22 == (uint *******)0x0)" ( (binary_expression "pppppppuVar22 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }" { (labeled_statement "LAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;" statement_identifier : (expression_statement "*(undefined1 **)(puVar26 + -0xc) = &local_f1;" (assignment_expression "*(undefined1 **)(puVar26 + -0xc) = &local_f1" (pointer_expression "*(undefined1 **)(puVar26 + -0xc)" * (cast_expression "(undefined1 **)(puVar26 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_f1" & identifier)) ;)) (expression_statement "*(uint *********)(puVar26 + -0x10) = &local_e8;" (assignment_expression "*(uint *********)(puVar26 + -0x10) = &local_e8" (pointer_expression "*(uint *********)(puVar26 + -0x10)" * (cast_expression "(uint *********)(puVar26 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_e8" & identifier)) ;) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5" (pointer_expression "*(uint ********)(puVar26 + -0x14)" * (cast_expression "(uint ********)(puVar26 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371b5" identifier + number_literal)) ;) (expression_statement "local_e8 = local_178;" (assignment_expression "local_e8 = local_178" identifier = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x18) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar26 + -0x18) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar26 + -0x18)" * (cast_expression "(uint ********)(puVar26 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar26 + -0x1c) = local_19c + 0x44;" (assignment_expression "*(int *)(puVar26 + -0x1c) = local_19c + 0x44" (pointer_expression "*(int *)(puVar26 + -0x1c)" * (cast_expression "(int *)(puVar26 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = (binary_expression "local_19c + 0x44" identifier + number_literal)) ;) (expression_statement "*(uint *********)(puVar26 + -0x20) = local_100;" (assignment_expression "*(uint *********)(puVar26 + -0x20) = local_100" (pointer_expression "*(uint *********)(puVar26 + -0x20)" * (cast_expression "(uint *********)(puVar26 + -0x20)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa324d;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa324d" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" * (cast_expression "(undefined4 *)(puVar26 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000a0360();" (call_expression "FUN_000a0360()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar26 + -4;" (assignment_expression "puVar26 = puVar26 + -4" identifier = (binary_expression "puVar26 + -4" identifier + number_literal)) ;) (expression_statement "pppppppuVar27 = local_100[0];" (assignment_expression "pppppppuVar27 = local_100[0]" identifier = (subscript_expression "local_100[0]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }" else (compound_statement "{\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }" { (expression_statement "local_170 = local_84;" (assignment_expression "local_170 = local_84" identifier = identifier) ;) (expression_statement "local_174 = pppppppuVar27;" (assignment_expression "local_174 = pppppppuVar27" identifier = identifier) ;) (expression_statement "local_154 = local_80;" (assignment_expression "local_154 = local_80" identifier = identifier) ;) (labeled_statement "LAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);" statement_identifier : (do_statement "do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);" do (compound_statement "{\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    }" { (expression_statement "pppppppuVar29 = (uint *******)pppppppuVar22[5];" (assignment_expression "pppppppuVar29 = (uint *******)pppppppuVar22[5]" identifier = (cast_expression "(uint *******)pppppppuVar22[5]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[5]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar27 = local_154;" (assignment_expression "pppppppuVar27 = local_154" identifier = identifier) ;) (if_statement "if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }" if (parenthesized_expression "(pppppppuVar29 <= local_154)" ( (binary_expression "pppppppuVar29 <= local_154" identifier <= identifier) )) (compound_statement "{\n                        pppppppuVar27 = pppppppuVar29;\n                      }" { (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" identifier = identifier) ;) })) (if_statement "if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }" if (parenthesized_expression "(pppppppuVar27 == (uint *******)0x0)" ( (binary_expression "pppppppuVar27 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }" { (labeled_statement "LAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;" statement_identifier : (expression_statement "iVar19 = (int)pppppppuVar29 - (int)local_154;" (assignment_expression "iVar19 = (int)pppppppuVar29 - (int)local_154" identifier = (binary_expression "(int)pppppppuVar29 - (int)local_154" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_154" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }" else (compound_statement "{\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }" { (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_170;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_170" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];" (assignment_expression "*(uint *******)(puVar26 + -0x10) = pppppppuVar22[4]" (pointer_expression "*(uint *******)(puVar26 + -0x10)" * (cast_expression "(uint *******)(puVar26 + -0x10)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (subscript_expression "pppppppuVar22[4]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa310f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa310f" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));" (assignment_expression "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8))" identifier = (call_expression "memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8))" identifier (argument_list "(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8))" ( (pointer_expression "*(void **)(puVar26 + -0x10)" * (cast_expression "(void **)(puVar26 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(void **)(puVar26 + -0xc)" * (cast_expression "(void **)(puVar26 + -0xc)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(size_t *)(puVar26 + -8)" * (cast_expression "(size_t *)(puVar26 + -8)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar19 == 0) goto LAB_000a3116;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000a3116;" goto statement_identifier ;)) }))) (if_statement "if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (compound_statement "{\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }" { (expression_statement "local_174 = pppppppuVar22;" (assignment_expression "local_174 = pppppppuVar22" identifier = identifier) ;) (expression_statement "pppppppuVar22 = (uint *******)pppppppuVar22[2];" (assignment_expression "pppppppuVar22 = (uint *******)pppppppuVar22[2]" identifier = (cast_expression "(uint *******)pppppppuVar22[2]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[2]" identifier [ number_literal ]))) ;) (if_statement "if (pppppppuVar22 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar22 == (uint *******)0x0)" ( (binary_expression "pppppppuVar22 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (goto_statement "goto LAB_000a30e5;" goto statement_identifier ;) })) (expression_statement "pppppppuVar22 = (uint *******)pppppppuVar22[3];" (assignment_expression "pppppppuVar22 = (uint *******)pppppppuVar22[3]" identifier = (cast_expression "(uint *******)pppppppuVar22[3]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar22[3]" identifier [ number_literal ]))) ;) }) while (parenthesized_expression "(pppppppuVar22 != (uint *******)0x0)" ( (binary_expression "pppppppuVar22 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) ;)) (expression_statement "pppppppuVar27 = local_174;" (assignment_expression "pppppppuVar27 = local_174" identifier = identifier) ;) (if_statement "if (local_18c == local_174) goto LAB_000a320c;" if (parenthesized_expression "(local_18c == local_174)" ( (binary_expression "local_18c == local_174" identifier == identifier) )) (goto_statement "goto LAB_000a320c;" goto statement_identifier ;)) (expression_statement "pppppppuVar22 = (uint *******)local_174[5];" (assignment_expression "pppppppuVar22 = (uint *******)local_174[5]" identifier = (cast_expression "(uint *******)local_174[5]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_174[5]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar29 = pppppppuVar22;" (assignment_expression "pppppppuVar29 = pppppppuVar22" identifier = identifier) ;) (if_statement "if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }" if (parenthesized_expression "(local_154 <= pppppppuVar22)" ( (binary_expression "local_154 <= pppppppuVar22" identifier <= identifier) )) (compound_statement "{\n                      pppppppuVar29 = local_154;\n                    }" { (expression_statement "pppppppuVar29 = local_154;" (assignment_expression "pppppppuVar29 = local_154" identifier = identifier) ;) })) (if_statement "if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }" { (labeled_statement "LAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;" statement_identifier : (expression_statement "iVar19 = (int)local_154 - (int)pppppppuVar22;" (assignment_expression "iVar19 = (int)local_154 - (int)pppppppuVar22" identifier = (binary_expression "(int)local_154 - (int)pppppppuVar22" (cast_expression "(int)local_154" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) }) (else_clause "else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }" else (compound_statement "{\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }" { (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar26 + -0xc) = local_174[4];" (assignment_expression "*(uint *******)(puVar26 + -0xc) = local_174[4]" (pointer_expression "*(uint *******)(puVar26 + -0xc)" * (cast_expression "(uint *******)(puVar26 + -0xc)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (subscript_expression "local_174[4]" identifier [ number_literal ])) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_170;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_170" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3167;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3167" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));" (assignment_expression "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8))" identifier = (call_expression "memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8))" identifier (argument_list "(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8))" ( (pointer_expression "*(void **)(puVar26 + -0x10)" * (cast_expression "(void **)(puVar26 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(void **)(puVar26 + -0xc)" * (cast_expression "(void **)(puVar26 + -0xc)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(size_t *)(puVar26 + -8)" * (cast_expression "(size_t *)(puVar26 + -8)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar19 == 0) goto LAB_000a3174;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000a3174;" goto statement_identifier ;)) }))) (if_statement "if (iVar19 < 0) goto LAB_000a320c;" if (parenthesized_expression "(iVar19 < 0)" ( (binary_expression "iVar19 < 0" identifier < number_literal) )) (goto_statement "goto LAB_000a320c;" goto statement_identifier ;)) }))) (expression_statement "local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);" (assignment_expression "local_154 = (uint *******)((uint)local_184 ^ (uint)param_1)" identifier = (cast_expression "(uint *******)((uint)local_184 ^ (uint)param_1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_184 ^ (uint)param_1)" ( (binary_expression "(uint)local_184 ^ (uint)param_1" (cast_expression "(uint)local_184" ( (type_descriptor "uint" type_identifier) ) identifier) ^ (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier)) )))) ;) (expression_statement "pppppppuVar22 = pppppppuVar27 + 10;" (assignment_expression "pppppppuVar22 = pppppppuVar27 + 10" identifier = (binary_expression "pppppppuVar27 + 10" identifier + number_literal)) ;) (expression_statement "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);" (assignment_expression "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" identifier = (cast_expression "(uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_154 % (uint)pppppppuVar27[0xb])" ( (binary_expression "(uint)local_154 % (uint)pppppppuVar27[0xb]" (cast_expression "(uint)local_154" ( (type_descriptor "uint" type_identifier) ) identifier) % (cast_expression "(uint)pppppppuVar27[0xb]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppuVar27[0xb]" identifier [ number_literal ]))) )))) ;) (expression_statement "*(uint ********)(puVar26 + -4) = local_154;" (assignment_expression "*(uint ********)(puVar26 + -4) = local_154" (pointer_expression "*(uint ********)(puVar26 + -4)" * (cast_expression "(uint ********)(puVar26 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *********)(puVar26 + -8) = &local_9c;" (assignment_expression "*(uint *********)(puVar26 + -8) = &local_9c" (pointer_expression "*(uint *********)(puVar26 + -8)" * (cast_expression "(uint *********)(puVar26 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = (pointer_expression "&local_9c" & identifier)) ;) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_170;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_170" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa31b4;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa31b4" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_174 = pppppppuVar22;" (assignment_expression "local_174 = pppppppuVar22" identifier = identifier) ;) (expression_statement "piVar11 = (int *)FUN_0008bfc0();" (assignment_expression "piVar11 = (int *)FUN_0008bfc0()" identifier = (cast_expression "(int *)FUN_0008bfc0()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0008bfc0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }" if (parenthesized_expression "((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0))" ( (binary_expression "(piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)" (parenthesized_expression "(piVar11 == (int *)0x0)" ( (binary_expression "piVar11 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)" ( (comma_expression "pppppppuVar29 = extraout_ECX_07, *piVar11 == 0" (assignment_expression "pppppppuVar29 = extraout_ECX_07" identifier = identifier) , (binary_expression "*piVar11 == 0" (pointer_expression "*piVar11" * identifier) == number_literal)) ))) )) (compound_statement "{\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }" { (expression_statement "*(undefined4 *)(puVar26 + -0x10) = 0x10;" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = 0x10" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" * (cast_expression "(undefined4 *)(puVar26 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa32a8;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa32a8" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppppppuVar21 = (uint ******)FUN_0017ebf0();" (assignment_expression "ppppppuVar21 = (uint ******)FUN_0017ebf0()" identifier = (cast_expression "(uint ******)FUN_0017ebf0()" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (call_expression "FUN_0017ebf0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*ppppppuVar21 = (uint *****)0x0;" (assignment_expression "*ppppppuVar21 = (uint *****)0x0" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[1] = (uint *****)param_1;" (assignment_expression "ppppppuVar21[1] = (uint *****)param_1" (subscript_expression "ppppppuVar21[1]" identifier [ number_literal ]) = (cast_expression "(uint *****)param_1" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "ppppppuVar21[2] = (uint *****)local_184;" (assignment_expression "ppppppuVar21[2] = (uint *****)local_184" (subscript_expression "ppppppuVar21[2]" identifier [ number_literal ]) = (cast_expression "(uint *****)local_184" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "local_e4 = pppppppuVar27[0xf];" (assignment_expression "local_e4 = pppppppuVar27[0xf]" identifier = (subscript_expression "pppppppuVar27[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" * (cast_expression "(undefined4 *)(puVar26 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];" (assignment_expression "*(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd]" (pointer_expression "*(uint *******)(puVar26 + -0x14)" * (cast_expression "(uint *******)(puVar26 + -0x14)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = (subscript_expression "pppppppuVar27[0xd]" identifier [ number_literal ])) ;) (expression_statement "*(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];" (assignment_expression "*(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb]" (pointer_expression "*(uint *******)(puVar26 + -0x18)" * (cast_expression "(uint *******)(puVar26 + -0x18)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = (subscript_expression "pppppppuVar27[0xb]" identifier [ number_literal ])) ;) (expression_statement "*(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;" (assignment_expression "*(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe" (pointer_expression "*(uint ********)(puVar26 + -0x1c)" * (cast_expression "(uint ********)(puVar26 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x1c)" ( (binary_expression "puVar26 + -0x1c" identifier + number_literal) )))) = (binary_expression "pppppppuVar27 + 0xe" identifier + number_literal)) ;) (expression_statement "*(char **)(puVar26 + -0x20) = local_10c;" (assignment_expression "*(char **)(puVar26 + -0x20) = local_10c" (pointer_expression "*(char **)(puVar26 + -0x20)" * (cast_expression "(char **)(puVar26 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar26 + -0x20)" ( (binary_expression "puVar26 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa32eb;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa32eb" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" * (cast_expression "(undefined4 *)(puVar26 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x24)" ( (binary_expression "puVar26 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001c5e50();" (call_expression "FUN_001c5e50()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_09;" (assignment_expression "pppppppuVar29 = extraout_ECX_09" identifier = identifier) ;) (if_statement "if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }" if (parenthesized_expression "(local_10c[0] != '\0')" ( (binary_expression "local_10c[0] != '\0'" (subscript_expression "local_10c[0]" identifier [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }" { (expression_statement "*(uint ********)(puVar26 + -0xc) = &local_e4;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = &local_e4" (pointer_expression "*(uint ********)(puVar26 + -0xc)" * (cast_expression "(uint ********)(puVar26 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_e4" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x10) = local_108;" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = local_108" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" * (cast_expression "(undefined4 *)(puVar26 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_174;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_174" (pointer_expression "*(uint ********)(puVar26 + -0x14)" * (cast_expression "(uint ********)(puVar26 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x18) = 0xa3696;" (assignment_expression "*(undefined4 *)(puVar26 + -0x18) = 0xa3696" (pointer_expression "*(undefined4 *)(puVar26 + -0x18)" * (cast_expression "(undefined4 *)(puVar26 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x18)" ( (binary_expression "puVar26 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0008f5f0();" (call_expression "FUN_0008f5f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);" (assignment_expression "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" identifier = (cast_expression "(uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_154 % (uint)pppppppuVar27[0xb])" ( (binary_expression "(uint)local_154 % (uint)pppppppuVar27[0xb]" (cast_expression "(uint)local_154" ( (type_descriptor "uint" type_identifier) ) identifier) % (cast_expression "(uint)pppppppuVar27[0xb]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppuVar27[0xb]" identifier [ number_literal ]))) )))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_12;" (assignment_expression "pppppppuVar29 = extraout_ECX_12" identifier = identifier) ;) })) (expression_statement "puVar26 = puVar26 + -4;" (assignment_expression "puVar26 = puVar26 + -4" identifier = (binary_expression "puVar26 + -4" identifier + number_literal)) ;) (expression_statement "ppppppuVar21[3] = (uint *****)local_154;" (assignment_expression "ppppppuVar21[3] = (uint *****)local_154" (subscript_expression "ppppppuVar21[3]" identifier [ number_literal ]) = (cast_expression "(uint *****)local_154" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "pppppppuVar22 = (uint *******)((int)local_170 * 4);" (assignment_expression "pppppppuVar22 = (uint *******)((int)local_170 * 4)" identifier = (cast_expression "(uint *******)((int)local_170 * 4)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_170 * 4)" ( (binary_expression "(int)local_170 * 4" (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }" if (parenthesized_expression "(pppppppuVar27[10][(int)local_170] == (uint *****)0x0)" ( (binary_expression "pppppppuVar27[10][(int)local_170] == (uint *****)0x0" (subscript_expression "pppppppuVar27[10][(int)local_170]" (subscript_expression "pppppppuVar27[10]" identifier [ number_literal ]) [ (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }" { (expression_statement "*ppppppuVar21 = (uint *****)pppppppuVar27[0xc];" (assignment_expression "*ppppppuVar21 = (uint *****)pppppppuVar27[0xc]" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)pppppppuVar27[0xc]" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (subscript_expression "pppppppuVar27[0xc]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar29 = (uint *******)pppppppuVar27[10];" (assignment_expression "pppppppuVar29 = (uint *******)pppppppuVar27[10]" identifier = (cast_expression "(uint *******)pppppppuVar27[10]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppuVar27[10]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar27[0xc] = ppppppuVar21;" (assignment_expression "pppppppuVar27[0xc] = ppppppuVar21" (subscript_expression "pppppppuVar27[0xc]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }" if (parenthesized_expression "(*ppppppuVar21 != (uint *****)0x0)" ( (binary_expression "*ppppppuVar21 != (uint *****)0x0" (pointer_expression "*ppppppuVar21" * identifier) != (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }" { (expression_statement "pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;" (assignment_expression "pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21" (subscript_expression "pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]]" identifier [ (binary_expression "(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]" (subscript_expression "(uint)(*ppppppuVar21)[3]" (call_expression "(uint)(*ppppppuVar21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*ppppppuVar21)" ( (pointer_expression "*ppppppuVar21" * identifier) ))) [ number_literal ]) % (cast_expression "(uint)pppppppuVar27[0xb]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppuVar27[0xb]" identifier [ number_literal ]))) ]) = identifier) ;) })) (expression_statement "pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);" (assignment_expression "pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc)" (subscript_expression "pppppppuVar29[(int)local_170]" identifier [ (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint ******)(pppppppuVar27 + 0xc)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(pppppppuVar27 + 0xc)" ( (binary_expression "pppppppuVar27 + 0xc" identifier + number_literal) )))) ;) }) (else_clause "else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }" else (compound_statement "{\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }" { (expression_statement "*ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];" (assignment_expression "*ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170]" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)*pppppppuVar27[10][(int)local_170]" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "*pppppppuVar27[10][(int)local_170]" * (subscript_expression "pppppppuVar27[10][(int)local_170]" (subscript_expression "pppppppuVar27[10]" identifier [ number_literal ]) [ (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) ])))) ;) (expression_statement "*pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;" (assignment_expression "*pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21" (pointer_expression "*pppppppuVar27[10][(int)local_170]" * (subscript_expression "pppppppuVar27[10][(int)local_170]" (subscript_expression "pppppppuVar27[10]" identifier [ number_literal ]) [ (cast_expression "(int)local_170" ( (type_descriptor "int" primitive_type) ) identifier) ])) = (cast_expression "(uint ****)ppppppuVar21" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier)) ;) }))) (expression_statement "pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);" (assignment_expression "pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1)" (subscript_expression "pppppppuVar27[0xd]" identifier [ number_literal ]) = (cast_expression "(uint ******)((int)pppppppuVar27[0xd] + 1)" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)pppppppuVar27[0xd] + 1)" ( (binary_expression "(int)pppppppuVar27[0xd] + 1" (cast_expression "(int)pppppppuVar27[0xd]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppppuVar27[0xd]" identifier [ number_literal ])) + number_literal) )))) ;) })) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;) (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" identifier = identifier) ;) (if_statement "if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }" if (parenthesized_expression "(local_84 != local_194)" ( (binary_expression "local_84 != local_194" identifier != identifier) )) (compound_statement "{\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }" { (expression_statement "*(uint ********)(puVar26 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa31e7;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa31e7" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_08;" (assignment_expression "pppppppuVar29 = extraout_ECX_08" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) })) })) })) })) (if_statement "if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" if (parenthesized_expression "(((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4))))" ( (binary_expression "((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))" (parenthesized_expression "((char)local_14c == '\0')" ( (binary_expression "(char)local_14c == '\0'" (cast_expression "(char)local_14c" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))" ( (parenthesized_expression "(local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4))" ( (binary_expression "local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)" (binary_expression "local_124 != (uint *******)0x9" identifier != (cast_expression "(uint *******)0x9" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) && (parenthesized_expression "(local_124 != (uint *******)0x4)" ( (binary_expression "local_124 != (uint *******)0x4" identifier != (cast_expression "(uint *******)0x4" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ))) )) ))) )) (compound_statement "{\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }" { (if_statement "if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }" if (parenthesized_expression "((local_124 != (uint *******)0x11) || ((char)local_140 == '\0'))" ( (binary_expression "(local_124 != (uint *******)0x11) || ((char)local_140 == '\0')" (parenthesized_expression "(local_124 != (uint *******)0x11)" ( (binary_expression "local_124 != (uint *******)0x11" identifier != (cast_expression "(uint *******)0x11" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) || (parenthesized_expression "((char)local_140 == '\0')" ( (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }" { (expression_statement "local_154 = (uint *******)&local_ec;" (assignment_expression "local_154 = (uint *******)&local_ec" identifier = (cast_expression "(uint *******)&local_ec" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_ec" & identifier))) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_154;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_154" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa29c8;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa29c8" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_000964f0();" (assignment_expression "cVar7 = FUN_000964f0()" identifier = (call_expression "FUN_000964f0()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "bVar35 = cVar7 == '\0';" (assignment_expression "bVar35 = cVar7 == '\0'" identifier = (binary_expression "cVar7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_03;" (assignment_expression "pppppppuVar29 = extraout_ECX_03" identifier = identifier) ;) (if_statement "if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }" if (parenthesized_expression "(!bVar35)" ( (unary_expression "!bVar35" ! identifier) )) (compound_statement "{\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }" { (expression_statement "pppppppuVar29 = (uint *******)0xa;" (assignment_expression "pppppppuVar29 = (uint *******)0xa" identifier = (cast_expression "(uint *******)0xa" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdef3a);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdef3a)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdef3a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdef3a)" ( (binary_expression "(int)local_120 + -0xdef3a" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);" do (compound_statement "{\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar28 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar35)" ( identifier )) ;) (if_statement "if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }" if (parenthesized_expression "((!bVar33 && !bVar35) == bVar33)" ( (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" ( (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" ! identifier) && (unary_expression "!bVar35" ! identifier)) )) == identifier) )) (compound_statement "{\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }" { (if_statement "if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }" if (parenthesized_expression "((char)local_140 == '\0')" ( (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }" { (if_statement "if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }" if (parenthesized_expression "(local_136 == '\0')" ( (binary_expression "local_136 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }" { (if_statement "if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }" if (parenthesized_expression "(*(byte *)((int)param_1 + 0x11d) == 0)" ( (binary_expression "*(byte *)((int)param_1 + 0x11d) == 0" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" * (cast_expression "(byte *)((int)param_1 + 0x11d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x11d)" ( (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }" { (if_statement "if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }" if (parenthesized_expression "(local_d0 == local_cc)" ( (binary_expression "local_d0 == local_cc" identifier == identifier) )) (compound_statement "{\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }" { (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" * (cast_expression "(uint *********)(puVar24 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (pointer_expression "&local_f0" & identifier)) ;) (expression_statement "*(int **)(puVar24 + -0xc) = local_d0;" (assignment_expression "*(int **)(puVar24 + -0xc) = local_d0" (pointer_expression "*(int **)(puVar24 + -0xc)" * (cast_expression "(int **)(puVar24 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" identifier = (binary_expression "puVar24 + -0x10" identifier + number_literal)) ;) (expression_statement "*(int ***)(puVar24 + -0x10) = &local_d4;" (assignment_expression "*(int ***)(puVar24 + -0x10) = &local_d4" (pointer_expression "*(int ***)(puVar24 + -0x10)" * (cast_expression "(int ***)(puVar24 + -0x10)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_d4" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa426e;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa426e" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_29;" (assignment_expression "pppppppuVar29 = extraout_ECX_29" identifier = identifier) ;) (goto_statement "goto LAB_000a3e57;" goto statement_identifier ;) })) (expression_statement "*local_d0 = (int)local_f0;" (assignment_expression "*local_d0 = (int)local_f0" (pointer_expression "*local_d0" * identifier) = (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_d0 = local_d0 + 1;" (assignment_expression "local_d0 = local_d0 + 1" identifier = (binary_expression "local_d0 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }" else (compound_statement "{\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }" { (expression_statement "pppppppuVar22 = (uint *******)local_15c[(int)local_f0];" (assignment_expression "pppppppuVar22 = (uint *******)local_15c[(int)local_f0]" identifier = (cast_expression "(uint *******)local_15c[(int)local_f0]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_15c[(int)local_f0]" identifier [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]))) ;) (expression_statement "local_124 = param_1 + 0x48;" (assignment_expression "local_124 = param_1 + 0x48" identifier = (binary_expression "param_1 + 0x48" identifier + number_literal)) ;) (expression_statement "uVar12 = local_158[(int)local_f0];" (assignment_expression "uVar12 = local_158[(int)local_f0]" identifier = (subscript_expression "local_158[(int)local_f0]" identifier [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" identifier = (cast_expression "(uint *******)&local_84" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_84" & identifier))) ;) (expression_statement "*(undefined4 *)(puVar24 + -4) = 0xa2a5f;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0xa2a5f" (pointer_expression "*(undefined4 *)(puVar24 + -4)" * (cast_expression "(undefined4 *)(puVar24 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000926b0();" (call_expression "FUN_000926b0()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_6c = pppppppuVar27;" (assignment_expression "local_6c = pppppppuVar27" identifier = identifier) ;) (expression_statement "local_60 = *local_134;" (assignment_expression "local_60 = *local_134" identifier = (pointer_expression "*local_134" * identifier)) ;) (expression_statement "local_58 = local_134[2];" (assignment_expression "local_58 = local_134[2]" identifier = (subscript_expression "local_134[2]" identifier [ number_literal ])) ;) (expression_statement "local_54 = local_134[3];" (assignment_expression "local_54 = local_134[3]" identifier = (subscript_expression "local_134[3]" identifier [ number_literal ])) ;) (expression_statement "local_50 = local_134[4];" (assignment_expression "local_50 = local_134[4]" identifier = (subscript_expression "local_134[4]" identifier [ number_literal ])) ;) (expression_statement "local_4c = local_134[5];" (assignment_expression "local_4c = local_134[5]" identifier = (subscript_expression "local_134[5]" identifier [ number_literal ])) ;) (expression_statement "local_48 = local_134[6];" (assignment_expression "local_48 = local_134[6]" identifier = (subscript_expression "local_134[6]" identifier [ number_literal ])) ;) (expression_statement "local_44 = local_134[7];" (assignment_expression "local_44 = local_134[7]" identifier = (subscript_expression "local_134[7]" identifier [ number_literal ])) ;) (expression_statement "local_40 = local_134[8];" (assignment_expression "local_40 = local_134[8]" identifier = (subscript_expression "local_134[8]" identifier [ number_literal ])) ;) (expression_statement "local_3c = local_134[9];" (assignment_expression "local_3c = local_134[9]" identifier = (subscript_expression "local_134[9]" identifier [ number_literal ])) ;) (expression_statement "local_38 = local_134[10];" (assignment_expression "local_38 = local_134[10]" identifier = (subscript_expression "local_134[10]" identifier [ number_literal ])) ;) (expression_statement "local_34 = local_134[0xb];" (assignment_expression "local_34 = local_134[0xb]" identifier = (subscript_expression "local_134[0xb]" identifier [ number_literal ])) ;) (expression_statement "local_30 = local_134[0xc];" (assignment_expression "local_30 = local_134[0xc]" identifier = (subscript_expression "local_134[0xc]" identifier [ number_literal ])) ;) (expression_statement "local_2c = local_134[0xd];" (assignment_expression "local_2c = local_134[0xd]" identifier = (subscript_expression "local_134[0xd]" identifier [ number_literal ])) ;) (expression_statement "local_28 = local_134[0xe];" (assignment_expression "local_28 = local_134[0xe]" identifier = (subscript_expression "local_134[0xe]" identifier [ number_literal ])) ;) (expression_statement "local_24 = local_134[0xf];" (assignment_expression "local_24 = local_134[0xf]" identifier = (subscript_expression "local_134[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_5c = local_198;" (assignment_expression "local_5c = local_198" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2aea;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2aea" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_68 = uVar12;" (assignment_expression "local_68 = uVar12" identifier = identifier) ;) (expression_statement "local_64 = pppppppuVar22;" (assignment_expression "local_64 = pppppppuVar22" identifier = identifier) ;) (expression_statement "FUN_000a10f0();" (call_expression "FUN_000a10f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar28 = local_120;" (assignment_expression "pppppppuVar28 = local_120" identifier = identifier) ;) (expression_statement "pppppppuVar29 = extraout_ECX_04;" (assignment_expression "pppppppuVar29 = extraout_ECX_04" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) (if_statement "if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }" if (parenthesized_expression "(local_84 != local_7c)" ( (binary_expression "local_84 != local_7c" identifier != identifier) )) (compound_statement "{\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2b0a" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_05;" (assignment_expression "pppppppuVar29 = extraout_ECX_05" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar28;" (assignment_expression "pppppppuVar22 = pppppppuVar28" identifier = identifier) ;) })) }))) }) (else_clause "else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }" else (compound_statement "{\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }" { (expression_statement "param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);" (assignment_expression "param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1)" (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1)" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (parenthesized_expression "((*(byte *)((int)param_1 + 0x11d) != 0) + 1)" ( (binary_expression "(*(byte *)((int)param_1 + 0x11d) != 0) + 1" (parenthesized_expression "(*(byte *)((int)param_1 + 0x11d) != 0)" ( (binary_expression "*(byte *)((int)param_1 + 0x11d) != 0" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" * (cast_expression "(byte *)((int)param_1 + 0x11d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x11d)" ( (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != number_literal) )) + number_literal) )))) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" identifier [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" identifier [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) }))) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) (expression_statement "local_124 = local_198;" (assignment_expression "local_124 = local_198" identifier = identifier) ;) })) })) (expression_statement "puVar23 = puVar24;" (assignment_expression "puVar23 = puVar24" identifier = identifier) ;) (if_statement "if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }" { (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" identifier = (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }" if (parenthesized_expression "((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0))" ( (binary_expression "(*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)" (parenthesized_expression "(*(byte *)((int)param_1 + 0x11d) == 0)" ( (binary_expression "*(byte *)((int)param_1 + 0x11d) == 0" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" * (cast_expression "(byte *)((int)param_1 + 0x11d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x11d)" ( (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == number_literal) )) || (parenthesized_expression "(((uint)local_ec[2] & 2) == 0)" ( (binary_expression "((uint)local_ec[2] & 2) == 0" (parenthesized_expression "((uint)local_ec[2] & 2)" ( (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }" { (if_statement "if (local_136 == '\0') goto LAB_000a2d10;" if (parenthesized_expression "(local_136 == '\0')" ( (binary_expression "local_136 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a2d10;" goto statement_identifier ;)) (labeled_statement "LAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;" statement_identifier : (expression_statement "*(undefined4 *)((int)param_1[0xe] + iVar19) = 1;" (assignment_expression "*(undefined4 *)((int)param_1[0xe] + iVar19) = 1" (pointer_expression "*(undefined4 *)((int)param_1[0xe] + iVar19)" * (cast_expression "(undefined4 *)((int)param_1[0xe] + iVar19)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1[0xe] + iVar19)" ( (binary_expression "(int)param_1[0xe] + iVar19" (cast_expression "(int)param_1[0xe]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xe]" identifier [ number_literal ])) + identifier) )))) = number_literal) ;)) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" identifier [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" identifier [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "puVar24 = puVar23;" (assignment_expression "puVar24 = puVar23" identifier = identifier) ;) }) (else_clause "else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }" else (compound_statement "{\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }" { (expression_statement "local_170 = (uint *******)local_15c[(int)local_f0];" (assignment_expression "local_170 = (uint *******)local_15c[(int)local_f0]" identifier = (cast_expression "(uint *******)local_15c[(int)local_f0]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_15c[(int)local_f0]" identifier [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]))) ;) (expression_statement "uVar12 = local_158[(int)local_f0];" (assignment_expression "uVar12 = local_158[(int)local_f0]" identifier = (subscript_expression "local_158[(int)local_f0]" identifier [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "local_154 = param_1 + 0x48;" (assignment_expression "local_154 = param_1 + 0x48" identifier = (binary_expression "param_1 + 0x48" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -4) = 0xa3ea6;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0xa3ea6" (pointer_expression "*(undefined4 *)(puVar24 + -4)" * (cast_expression "(undefined4 *)(puVar24 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000926b0();" (call_expression "FUN_000926b0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar22 = local_124;" (assignment_expression "pppppppuVar22 = local_124" identifier = identifier) ;) (expression_statement "local_6c = pppppppuVar27;" (assignment_expression "local_6c = pppppppuVar27" identifier = identifier) ;) (expression_statement "local_64 = local_170;" (assignment_expression "local_64 = local_170" identifier = identifier) ;) (expression_statement "local_60 = *local_134;" (assignment_expression "local_60 = *local_134" identifier = (pointer_expression "*local_134" * identifier)) ;) (expression_statement "local_58 = local_134[2];" (assignment_expression "local_58 = local_134[2]" identifier = (subscript_expression "local_134[2]" identifier [ number_literal ])) ;) (expression_statement "local_54 = local_134[3];" (assignment_expression "local_54 = local_134[3]" identifier = (subscript_expression "local_134[3]" identifier [ number_literal ])) ;) (expression_statement "local_50 = local_134[4];" (assignment_expression "local_50 = local_134[4]" identifier = (subscript_expression "local_134[4]" identifier [ number_literal ])) ;) (expression_statement "local_4c = local_134[5];" (assignment_expression "local_4c = local_134[5]" identifier = (subscript_expression "local_134[5]" identifier [ number_literal ])) ;) (expression_statement "local_48 = local_134[6];" (assignment_expression "local_48 = local_134[6]" identifier = (subscript_expression "local_134[6]" identifier [ number_literal ])) ;) (expression_statement "local_44 = local_134[7];" (assignment_expression "local_44 = local_134[7]" identifier = (subscript_expression "local_134[7]" identifier [ number_literal ])) ;) (expression_statement "local_40 = local_134[8];" (assignment_expression "local_40 = local_134[8]" identifier = (subscript_expression "local_134[8]" identifier [ number_literal ])) ;) (expression_statement "local_3c = local_134[9];" (assignment_expression "local_3c = local_134[9]" identifier = (subscript_expression "local_134[9]" identifier [ number_literal ])) ;) (expression_statement "local_38 = local_134[10];" (assignment_expression "local_38 = local_134[10]" identifier = (subscript_expression "local_134[10]" identifier [ number_literal ])) ;) (expression_statement "local_34 = local_134[0xb];" (assignment_expression "local_34 = local_134[0xb]" identifier = (subscript_expression "local_134[0xb]" identifier [ number_literal ])) ;) (expression_statement "local_30 = local_134[0xc];" (assignment_expression "local_30 = local_134[0xc]" identifier = (subscript_expression "local_134[0xc]" identifier [ number_literal ])) ;) (expression_statement "local_2c = local_134[0xd];" (assignment_expression "local_2c = local_134[0xd]" identifier = (subscript_expression "local_134[0xd]" identifier [ number_literal ])) ;) (expression_statement "local_28 = local_134[0xe];" (assignment_expression "local_28 = local_134[0xe]" identifier = (subscript_expression "local_134[0xe]" identifier [ number_literal ])) ;) (expression_statement "local_24 = local_134[0xf];" (assignment_expression "local_24 = local_134[0xf]" identifier = (subscript_expression "local_134[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(uint *********)(puVar24 + -0xc) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0xc) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0xc)" * (cast_expression "(uint *********)(puVar24 + -0xc)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_154;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_154" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_5c = local_124;" (assignment_expression "local_5c = local_124" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3f32;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3f32" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_68 = uVar12;" (assignment_expression "local_68 = uVar12" identifier = identifier) ;) (expression_statement "FUN_000a10f0();" (call_expression "FUN_000a10f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;) (expression_statement "pppppppuVar29 = extraout_ECX_22;" (assignment_expression "pppppppuVar29 = extraout_ECX_22" identifier = identifier) ;) (if_statement "if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }" if (parenthesized_expression "(local_84 != local_7c)" ( (binary_expression "local_84 != local_7c" identifier != identifier) )) (compound_statement "{\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3f4e" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_23;" (assignment_expression "pppppppuVar29 = extraout_ECX_23" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) })) (expression_statement "param_1[0xe][(int)local_f0] = (uint *****)0x2;" (assignment_expression "param_1[0xe][(int)local_f0] = (uint *****)0x2" (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(uint *****)0x2" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" identifier = (subscript_expression "param_1[0x21]" identifier [ number_literal ])) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" identifier [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" identifier [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) }))) }) (else_clause "else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }" else (compound_statement "{\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }" { (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" identifier = (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) ;) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }" { (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4330;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4330" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" identifier = (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pppppuVar18 = param_1[0xe][(int)local_f0];" (assignment_expression "pppppuVar18 = param_1[0xe][(int)local_f0]" identifier = (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "pppppppuVar29 = param_1;" (assignment_expression "pppppppuVar29 = param_1" identifier = identifier) ;) (if_statement "if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }" if (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x18b1) == '\0')" ( (binary_expression "*(char *)((int)pppppuVar15 + 0x18b1) == '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x18b1)" * (cast_expression "(char *)((int)pppppuVar15 + 0x18b1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x18b1)" ( (binary_expression "(int)pppppuVar15 + 0x18b1" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }" { (labeled_statement "LAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }" statement_identifier : (if_statement "if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }" if (parenthesized_expression "(pppppuVar15[0x164d] != (uint ****)0x0)" ( (binary_expression "pppppuVar15[0x164d] != (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" identifier [ number_literal ]) != (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }" { (if_statement "if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }" if (parenthesized_expression "(pppppuVar18 == (uint *****)0x0)" ( (binary_expression "pppppuVar18 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }" { (expression_statement "uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];" (assignment_expression "uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2]" identifier = (binary_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2]" (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[0x21][(int)local_f0 * 2 + 1]" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ])) & (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[0x21][(int)local_f0 * 2]" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ])))) ;) (expression_statement "pppppppuVar29 = local_ec;" (assignment_expression "pppppppuVar29 = local_ec" identifier = identifier) ;) (expression_statement "puVar24 = puVar23;" (assignment_expression "puVar24 = puVar23" identifier = identifier) ;) (if_statement "if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }" if (parenthesized_expression "(uVar10 != 0xffffffff)" ( (binary_expression "uVar10 != 0xffffffff" identifier != number_literal) )) (compound_statement "{\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }" { (expression_statement "*(uint *)(puVar23 + -4) = uVar10;" (assignment_expression "*(uint *)(puVar23 + -4) = uVar10" (pointer_expression "*(uint *)(puVar23 + -4)" * (cast_expression "(uint *)(puVar23 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -4)" ( (binary_expression "puVar23 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -8) = local_120 + -0x373b3;" (assignment_expression "*(uint ********)(puVar23 + -8) = local_120 + -0x373b3" (pointer_expression "*(uint ********)(puVar23 + -8)" * (cast_expression "(uint ********)(puVar23 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -8)" ( (binary_expression "puVar23 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = 0x6f9;" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = 0x6f9" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" * (cast_expression "(undefined4 *)(puVar23 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2" (pointer_expression "*(uint ********)(puVar23 + -0x10)" * (cast_expression "(uint ********)(puVar23 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x375d2" identifier + number_literal)) ;) (expression_statement "*(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;" (assignment_expression "*(undefined **)(puVar23 + -0x14) = &UNK_000a2f61" (pointer_expression "*(undefined **)(puVar23 + -0x14)" * (cast_expression "(undefined **)(puVar23 + -0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = (pointer_expression "&UNK_000a2f61" & identifier)) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) (labeled_statement "LAB_000a2cf0:\n                      pppppppuVar27 = local_120;" statement_identifier : (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;)) (expression_statement "pppppppuVar29 = local_ec;" (assignment_expression "pppppppuVar29 = local_ec" identifier = identifier) ;) (if_statement "if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }" if (parenthesized_expression "(((uint)local_ec[2] & 2) != 0)" ( (binary_expression "((uint)local_ec[2] & 2) != 0" (parenthesized_expression "((uint)local_ec[2] & 2)" ( (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) & number_literal) )) != number_literal) )) (compound_statement "{\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }" { (expression_statement "*(uint ********)(puVar23 + -8) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -8) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -8)" * (cast_expression "(uint ********)(puVar23 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -8)" ( (binary_expression "puVar23 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0xc) = param_1;" (assignment_expression "*(uint ********)(puVar23 + -0xc) = param_1" (pointer_expression "*(uint ********)(puVar23 + -0xc)" * (cast_expression "(uint ********)(puVar23 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);" (assignment_expression "*(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c)" (pointer_expression "*(undefined4 *)(puVar23 + -0x10)" * (cast_expression "(undefined4 *)(puVar23 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(param_2 + 0x15c)" * (cast_expression "(undefined4 *)(param_2 + 0x15c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x15c)" ( (binary_expression "param_2 + 0x15c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;" (assignment_expression "*(undefined4 *)(puVar23 + -0x14) = 0xa3ddb" (pointer_expression "*(undefined4 *)(puVar23 + -0x14)" * (cast_expression "(undefined4 *)(puVar23 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar7 = FUN_00062560();" (assignment_expression "cVar7 = FUN_00062560()" identifier = (call_expression "FUN_00062560()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) (if_statement "if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }" if (parenthesized_expression "(cVar7 != '\0')" ( (binary_expression "cVar7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }" { (expression_statement "*(int *)(puVar23 + -4) = iVar19;" (assignment_expression "*(int *)(puVar23 + -4) = iVar19" (pointer_expression "*(int *)(puVar23 + -4)" * (cast_expression "(int *)(puVar23 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -4)" ( (binary_expression "puVar23 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar23 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar23 + -8)" * (cast_expression "(uint ********)(puVar23 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -8)" ( (binary_expression "puVar23 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" * (cast_expression "(undefined4 *)(puVar23 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar23 + -0x10)" * (cast_expression "(uint ********)(puVar23 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x14) = 0xa44a9;" (assignment_expression "*(undefined4 *)(puVar23 + -0x14) = 0xa44a9" (pointer_expression "*(undefined4 *)(puVar23 + -0x14)" * (cast_expression "(undefined4 *)(puVar23 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "pppppppuVar29 = extraout_ECX_20;" (assignment_expression "pppppppuVar29 = extraout_ECX_20" identifier = identifier) ;) (expression_statement "puVar26 = puVar23;" (assignment_expression "puVar26 = puVar23" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }" if (parenthesized_expression "(*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0')" ( (binary_expression "*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x2ed1)" * (cast_expression "(char *)((int)(*local_13c)[2] + 0x2ed1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(*local_13c)[2] + 0x2ed1)" ( (binary_expression "(int)(*local_13c)[2] + 0x2ed1" (cast_expression "(int)(*local_13c)[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }" { (expression_statement "*(uint ********)(puVar23 + -4) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -4) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -4)" * (cast_expression "(uint ********)(puVar23 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -4)" ( (binary_expression "puVar23 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -8) = param_1;" (assignment_expression "*(uint ********)(puVar23 + -8) = param_1" (pointer_expression "*(uint ********)(puVar23 + -8)" * (cast_expression "(uint ********)(puVar23 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -8)" ( (binary_expression "puVar23 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c)" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" * (cast_expression "(undefined4 *)(puVar23 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(param_2 + 0x15c)" * (cast_expression "(undefined4 *)(param_2 + 0x15c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x15c)" ( (binary_expression "param_2 + 0x15c" identifier + number_literal) ))))) ;) (expression_statement "*(int ***)(puVar23 + -0x10) = &local_11c;" (assignment_expression "*(int ***)(puVar23 + -0x10) = &local_11c" (pointer_expression "*(int ***)(puVar23 + -0x10)" * (cast_expression "(int ***)(puVar23 + -0x10)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_11c" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x14) = 0xa4081;" (assignment_expression "*(undefined4 *)(puVar23 + -0x14) = 0xa4081" (pointer_expression "*(undefined4 *)(puVar23 + -0x14)" * (cast_expression "(undefined4 *)(puVar23 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000625c0();" (call_expression "FUN_000625c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar19 = *local_11c;" (assignment_expression "iVar19 = *local_11c" identifier = (pointer_expression "*local_11c" * identifier)) ;) (expression_statement "iVar5 = local_11c[1];" (assignment_expression "iVar5 = local_11c[1]" identifier = (subscript_expression "local_11c[1]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = local_118;" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = local_118" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" * (cast_expression "(undefined4 *)(puVar23 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0xc)" ( (binary_expression "puVar23 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar23 + -0x10) = local_11c;" (assignment_expression "*(int **)(puVar23 + -0x10) = local_11c" (pointer_expression "*(int **)(puVar23 + -0x10)" * (cast_expression "(int **)(puVar23 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *********)(puVar23 + -0x14) = &local_84;" (assignment_expression "*(uint *********)(puVar23 + -0x14) = &local_84" (pointer_expression "*(uint *********)(puVar23 + -0x14)" * (cast_expression "(uint *********)(puVar23 + -0x14)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "pcVar6 = *(code **)(iVar19 + 0x40);" (assignment_expression "pcVar6 = *(code **)(iVar19 + 0x40)" identifier = (pointer_expression "*(code **)(iVar19 + 0x40)" * (cast_expression "(code **)(iVar19 + 0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar19 + 0x40)" ( (binary_expression "iVar19 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x18) = 0xa409e;" (assignment_expression "*(undefined4 *)(puVar23 + -0x18) = 0xa409e" (pointer_expression "*(undefined4 *)(puVar23 + -0x18)" * (cast_expression "(undefined4 *)(puVar23 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x18)" ( (binary_expression "puVar23 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar6)();" (call_expression "(*pcVar6)()" (parenthesized_expression "(*pcVar6)" ( (pointer_expression "*pcVar6" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = local_84;" (assignment_expression "pppppppuVar29 = local_84" identifier = identifier) ;) (expression_statement "local_12c = (uint *******)param_1[1];" (assignment_expression "local_12c = (uint *******)param_1[1]" identifier = (cast_expression "(uint *******)param_1[1]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[1]" identifier [ number_literal ]))) ;) (expression_statement "pppppppuVar22 = (uint *******)(*param_1)[0x10];" (assignment_expression "pppppppuVar22 = (uint *******)(*param_1)[0x10]" identifier = (cast_expression "(uint *******)(*param_1)[0x10]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "(*param_1)[0x10]" (parenthesized_expression "(*param_1)" ( (pointer_expression "*param_1" * identifier) )) [ number_literal ]))) ;) (if_statement "if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }" if (parenthesized_expression "(pppppppuVar22 == local_120 + -0x99678)" ( (binary_expression "pppppppuVar22 == local_120 + -0x99678" identifier == (binary_expression "local_120 + -0x99678" identifier + number_literal)) )) (compound_statement "{\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }" { (expression_statement "*(uint ********)(puVar23 + -0x10) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -0x10)" * (cast_expression "(uint ********)(puVar23 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x14) = param_1 + 0x24;" (assignment_expression "*(uint ********)(puVar23 + -0x14) = param_1 + 0x24" (pointer_expression "*(uint ********)(puVar23 + -0x14)" * (cast_expression "(uint ********)(puVar23 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = (binary_expression "param_1 + 0x24" identifier + number_literal)) ;) (expression_statement "*(uint *********)(puVar23 + -0x18) = &local_9c;" (assignment_expression "*(uint *********)(puVar23 + -0x18) = &local_9c" (pointer_expression "*(uint *********)(puVar23 + -0x18)" * (cast_expression "(uint *********)(puVar23 + -0x18)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar23 + -0x18)" ( (binary_expression "puVar23 + -0x18" identifier + number_literal) )))) = (pointer_expression "&local_9c" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;" (assignment_expression "*(undefined4 *)(puVar23 + -0x1c) = 0xa40ec" (pointer_expression "*(undefined4 *)(puVar23 + -0x1c)" * (cast_expression "(undefined4 *)(puVar23 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004e830();" (call_expression "FUN_0004e830()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }" else (compound_statement "{\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }" { (expression_statement "*(uint ********)(puVar23 + -0x10) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -0x10)" * (cast_expression "(uint ********)(puVar23 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x10)" ( (binary_expression "puVar23 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x14) = param_1;" (assignment_expression "*(uint ********)(puVar23 + -0x14) = param_1" (pointer_expression "*(uint ********)(puVar23 + -0x14)" * (cast_expression "(uint ********)(puVar23 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x14)" ( (binary_expression "puVar23 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *********)(puVar23 + -0x18) = &local_9c;" (assignment_expression "*(uint *********)(puVar23 + -0x18) = &local_9c" (pointer_expression "*(uint *********)(puVar23 + -0x18)" * (cast_expression "(uint *********)(puVar23 + -0x18)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar23 + -0x18)" ( (binary_expression "puVar23 + -0x18" identifier + number_literal) )))) = (pointer_expression "&local_9c" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;" (assignment_expression "*(undefined4 *)(puVar23 + -0x1c) = 0xa42b7" (pointer_expression "*(undefined4 *)(puVar23 + -0x1c)" * (cast_expression "(undefined4 *)(puVar23 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*(code *)pppppppuVar22)();" (call_expression "(*(code *)pppppppuVar22)()" (parenthesized_expression "(*(code *)pppppppuVar22)" ( (pointer_expression "*(code *)pppppppuVar22" * (cast_expression "(code *)pppppppuVar22" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) }))) (expression_statement "local_154 = local_9c;" (assignment_expression "local_154 = local_9c" identifier = identifier) ;) (expression_statement "local_124 = (uint *******)*local_1a0;" (assignment_expression "local_124 = (uint *******)*local_1a0" identifier = (cast_expression "(uint *******)*local_1a0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*local_1a0" * identifier))) ;) (expression_statement "*(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" * (cast_expression "(uint ********)(puVar23 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = (binary_expression "local_120 + -0x3746d" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x20) = 0xa4120;" (assignment_expression "*(undefined4 *)(puVar23 + -0x20) = 0xa4120" (pointer_expression "*(undefined4 *)(puVar23 + -0x20)" * (cast_expression "(undefined4 *)(puVar23 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x20)" ( (binary_expression "puVar23 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = gettext();" (assignment_expression "uVar12 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "*(int *)(puVar23 + -0x18) = iVar5;" (assignment_expression "*(int *)(puVar23 + -0x18) = iVar5" (pointer_expression "*(int *)(puVar23 + -0x18)" * (cast_expression "(int *)(puVar23 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x18)" ( (binary_expression "puVar23 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x1c) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" * (cast_expression "(uint ********)(puVar23 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar23 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar23 + -0x20)" * (cast_expression "(uint ********)(puVar23 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x20)" ( (binary_expression "puVar23 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x24) = local_154;" (assignment_expression "*(uint ********)(puVar23 + -0x24) = local_154" (pointer_expression "*(uint ********)(puVar23 + -0x24)" * (cast_expression "(uint ********)(puVar23 + -0x24)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x24)" ( (binary_expression "puVar23 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar23 + -0x28) = local_124;" (assignment_expression "*(uint ********)(puVar23 + -0x28) = local_124" (pointer_expression "*(uint ********)(puVar23 + -0x28)" * (cast_expression "(uint ********)(puVar23 + -0x28)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x28)" ( (binary_expression "puVar23 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x2c) = uVar12;" (assignment_expression "*(undefined4 *)(puVar23 + -0x2c) = uVar12" (pointer_expression "*(undefined4 *)(puVar23 + -0x2c)" * (cast_expression "(undefined4 *)(puVar23 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x2c)" ( (binary_expression "puVar23 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x30) = 0xa4146;" (assignment_expression "*(undefined4 *)(puVar23 + -0x30) = 0xa4146" (pointer_expression "*(undefined4 *)(puVar23 + -0x30)" * (cast_expression "(undefined4 *)(puVar23 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x30)" ( (binary_expression "puVar23 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005ad60();" (call_expression "FUN_0005ad60()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_24;" (assignment_expression "pppppppuVar29 = extraout_ECX_24" identifier = identifier) ;) (if_statement "if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }" if (parenthesized_expression "(local_9c != local_94)" ( (binary_expression "local_9c != local_94" identifier != identifier) )) (compound_statement "{\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }" { (expression_statement "*(uint ********)(puVar23 + -0x1c) = local_9c;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = local_9c" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" * (cast_expression "(uint ********)(puVar23 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x20) = 0xa4162;" (assignment_expression "*(undefined4 *)(puVar23 + -0x20) = 0xa4162" (pointer_expression "*(undefined4 *)(puVar23 + -0x20)" * (cast_expression "(undefined4 *)(puVar23 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x20)" ( (binary_expression "puVar23 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_25;" (assignment_expression "pppppppuVar29 = extraout_ECX_25" identifier = identifier) ;) })) (expression_statement "pppppppuVar28 = local_120;" (assignment_expression "pppppppuVar28 = local_120" identifier = identifier) ;) (expression_statement "puVar26 = puVar23 + -0xc;" (assignment_expression "puVar26 = puVar23 + -0xc" identifier = (binary_expression "puVar23 + -0xc" identifier + number_literal)) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }" if (parenthesized_expression "(local_84 != local_7c)" ( (binary_expression "local_84 != local_7c" identifier != identifier) )) (compound_statement "{\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }" { (expression_statement "*(uint ********)(puVar23 + -0x1c) = local_84;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = local_84" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" * (cast_expression "(uint ********)(puVar23 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar23 + -0x1c)" ( (binary_expression "puVar23 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar23 + -0x20) = 0xa417e;" (assignment_expression "*(undefined4 *)(puVar23 + -0x20) = 0xa417e" (pointer_expression "*(undefined4 *)(puVar23 + -0x20)" * (cast_expression "(undefined4 *)(puVar23 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + -0x20)" ( (binary_expression "puVar23 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar23 + -0xc;" (assignment_expression "puVar26 = puVar23 + -0xc" identifier = (binary_expression "puVar23 + -0xc" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_26;" (assignment_expression "pppppppuVar29 = extraout_ECX_26" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar28;" (assignment_expression "pppppppuVar22 = pppppppuVar28" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) })) })) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;) })) (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" identifier = (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pppppuVar18 = param_1[0xe][(int)local_f0];" (assignment_expression "pppppuVar18 = param_1[0xe][(int)local_f0]" identifier = (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "pppppppuVar29 = extraout_ECX_20;" (assignment_expression "pppppppuVar29 = extraout_ECX_20" identifier = identifier) ;) })) }))) }) (else_clause "else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }" else (compound_statement "{\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }" { (if_statement "if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }" if (parenthesized_expression "(pppppuVar18 == (uint *****)0x0)" ( (binary_expression "pppppuVar18 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }" { (if_statement "if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }" if (parenthesized_expression "(((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff)" ( (binary_expression "((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff" (parenthesized_expression "((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2])" ( (binary_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]" (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[0x21][(int)local_f0 * 2 + 1]" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) [ (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ])) & (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[0x21][(int)local_f0 * 2]" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) [ (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]))) )) != number_literal) )) (compound_statement "{\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }" { (expression_statement "*(uint ********)(puVar24 + -4) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -4) = param_1" (pointer_expression "*(uint ********)(puVar24 + -4)" * (cast_expression "(uint ********)(puVar24 + -4)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x373b3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x6e4;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x6e4" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x375d2" identifier + number_literal)) ;) (expression_statement "*(undefined **)(puVar24 + -0x14) = &UNK_000a342d;" (assignment_expression "*(undefined **)(puVar24 + -0x14) = &UNK_000a342d" (pointer_expression "*(undefined **)(puVar24 + -0x14)" * (cast_expression "(undefined **)(puVar24 + -0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (pointer_expression "&UNK_000a342d" & identifier)) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) (if_statement "if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }" if (parenthesized_expression "(((uint)local_ec[2] & 2) != 0)" ( (binary_expression "((uint)local_ec[2] & 2) != 0" (parenthesized_expression "((uint)local_ec[2] & 2)" ( (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) & number_literal) )) != number_literal) )) (compound_statement "{\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }" { (expression_statement "local_80 = local_f0;" (assignment_expression "local_80 = local_f0" identifier = identifier) ;) (expression_statement "local_170 = *(uint ********)(param_2 + 0x158);" (assignment_expression "local_170 = *(uint ********)(param_2 + 0x158)" identifier = (pointer_expression "*(uint ********)(param_2 + 0x158)" * (cast_expression "(uint ********)(param_2 + 0x158)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(param_2 + 0x158)" ( (binary_expression "param_2 + 0x158" identifier + number_literal) ))))) ;) (expression_statement "local_84 = param_1;" (assignment_expression "local_84 = param_1" identifier = identifier) ;) (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" identifier = (cast_expression "(uint *******)&local_84" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&local_84" & identifier))) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_178" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_170 + 10;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_170 + 10" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (binary_expression "local_170 + 10" identifier + number_literal)) ;) (expression_statement "*(int **)(puVar24 + -0x10) = &local_110;" (assignment_expression "*(int **)(puVar24 + -0x10) = &local_110" (pointer_expression "*(int **)(puVar24 + -0x10)" * (cast_expression "(int **)(puVar24 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_110" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2ed3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065700();" (call_expression "FUN_00065700()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar24 + -4;" (assignment_expression "puVar26 = puVar24 + -4" identifier = (binary_expression "puVar24 + -4" identifier + number_literal)) ;) (expression_statement "puVar23 = puVar24 + -4;" (assignment_expression "puVar23 = puVar24 + -4" identifier = (binary_expression "puVar24 + -4" identifier + number_literal)) ;) (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" identifier = (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) ;) (if_statement "if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }" if (parenthesized_expression "(local_110 == 0)" ( (binary_expression "local_110 == 0" identifier == number_literal) )) (compound_statement "{\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }" { (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }" { (expression_statement "*(undefined4 *)(puVar24 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -8)" * (cast_expression "(undefined4 *)(puVar24 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa43a7;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa43a7" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "pppppppuVar29 = extraout_ECX_06;" (assignment_expression "pppppppuVar29 = extraout_ECX_06" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }" if (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x2e55) != '\0')" ( (binary_expression "*(char *)((int)pppppuVar15 + 0x2e55) != '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x2e55)" * (cast_expression "(char *)((int)pppppuVar15 + 0x2e55)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppuVar15 + 0x2e55)" ( (binary_expression "(int)pppppuVar15 + 0x2e55" (cast_expression "(int)pppppuVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }" { (expression_statement "ppppppuVar21 = param_1[1];" (assignment_expression "ppppppuVar21 = param_1[1]" identifier = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "pppppppuVar22 = (uint *******)(*param_1)[0x10];" (assignment_expression "pppppppuVar22 = (uint *******)(*param_1)[0x10]" identifier = (cast_expression "(uint *******)(*param_1)[0x10]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "(*param_1)[0x10]" (parenthesized_expression "(*param_1)" ( (pointer_expression "*param_1" * identifier) )) [ number_literal ]))) ;) (if_statement "if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }" if (parenthesized_expression "(pppppppuVar22 == local_120 + -0x99678)" ( (binary_expression "pppppppuVar22 == local_120 + -0x99678" identifier == (binary_expression "local_120 + -0x99678" identifier + number_literal)) )) (compound_statement "{\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }" { (expression_statement "*(uint ********)(puVar24 + -0xc) = local_f0;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_f0" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1 + 0x24;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1 + 0x24" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "param_1 + 0x24" identifier + number_literal)) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa3909;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa3909" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0004e830();" (call_expression "FUN_0004e830()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }" else (compound_statement "{\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }" { (expression_statement "*(uint ********)(puVar24 + -0xc) = local_f0;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_f0" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa42a2;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa42a2" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*(code *)pppppppuVar22)();" (call_expression "(*(code *)pppppppuVar22)()" (parenthesized_expression "(*(code *)pppppppuVar22)" ( (pointer_expression "*(code *)pppppppuVar22" * (cast_expression "(code *)pppppppuVar22" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) }))) (expression_statement "local_12c = local_84;" (assignment_expression "local_12c = local_84" identifier = identifier) ;) (expression_statement "ppppppuVar17 = *local_1a4;" (assignment_expression "ppppppuVar17 = *local_1a4" identifier = (pointer_expression "*local_1a4" * identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = (binary_expression "local_120 + -0x3747a" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = 0xa3934;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = 0xa3934" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = gettext();" (assignment_expression "uVar12 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0xc) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar24 + -0xc) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar24 + -0xc)" * (cast_expression "(uint *******)(puVar24 + -0xc)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *******)(puVar24 + -0x14) = ppppppuVar17;" (assignment_expression "*(uint *******)(puVar24 + -0x14) = ppppppuVar17" (pointer_expression "*(uint *******)(puVar24 + -0x14)" * (cast_expression "(uint *******)(puVar24 + -0x14)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = 0xa394e;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = 0xa394e" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005ad60();" (call_expression "FUN_0005ad60()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar24 + -8;" (assignment_expression "puVar26 = puVar24 + -8" identifier = (binary_expression "puVar24 + -8" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_14;" (assignment_expression "pppppppuVar29 = extraout_ECX_14" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) (if_statement "if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }" if (parenthesized_expression "(local_84 != local_7c)" ( (binary_expression "local_84 != local_7c" identifier != identifier) )) (compound_statement "{\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }" { (expression_statement "*(uint ********)(puVar24 + -0x18) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = 0xa3968;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = 0xa3968" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" * (cast_expression "(undefined4 *)(puVar24 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar26 = puVar24 + -8;" (assignment_expression "puVar26 = puVar24 + -8" identifier = (binary_expression "puVar24 + -8" identifier + number_literal)) ;) (expression_statement "pppppppuVar29 = extraout_ECX_15;" (assignment_expression "pppppppuVar29 = extraout_ECX_15" identifier = identifier) ;) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" identifier = identifier) ;) })) })) (goto_statement "goto LAB_000a2c3a;" goto statement_identifier ;) })) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }" if (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" ( (binary_expression "pppppuVar15 == (uint *****)0x0" identifier == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }" { (expression_statement "*(undefined4 *)(puVar24 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -8)" * (cast_expression "(undefined4 *)(puVar24 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" * (cast_expression "(undefined4 *)(puVar24 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x14)" * (cast_expression "(uint ********)(puVar24 + -0x14)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa434c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa434c" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" * (cast_expression "(undefined4 *)(puVar24 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" identifier = (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pppppuVar18 = param_1[0xe][(int)local_f0];" (assignment_expression "pppppuVar18 = param_1[0xe][(int)local_f0]" identifier = (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" identifier [ number_literal ]) [ (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (expression_statement "pppppppuVar29 = extraout_ECX_06;" (assignment_expression "pppppppuVar29 = extraout_ECX_06" identifier = identifier) ;) (expression_statement "pppppppuVar22 = param_1;" (assignment_expression "pppppppuVar22 = param_1" identifier = identifier) ;) (goto_statement "goto LAB_000a2f0d;" goto statement_identifier ;) })) (expression_statement "pppppppuVar29 = local_ec;" (assignment_expression "pppppppuVar29 = local_ec" identifier = identifier) ;) (if_statement "if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;" if (parenthesized_expression "(pppppuVar15[0x164d] != (uint ****)0x0)" ( (binary_expression "pppppuVar15[0x164d] != (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" identifier [ number_literal ]) != (cast_expression "(uint ****)0x0" ( (type_descriptor "uint ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (goto_statement "goto LAB_000a2cf0;" goto statement_identifier ;)) }))) (expression_statement "puVar24 = puVar23;" (assignment_expression "puVar24 = puVar23" identifier = identifier) ;) (if_statement "if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }" if (parenthesized_expression "(pppppuVar18 != (uint *****)0x2)" ( (binary_expression "pppppuVar18 != (uint *****)0x2" identifier != (cast_expression "(uint *****)0x2" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }" { (if_statement "if (local_136 != '\0') goto LAB_000a2b6b;" if (parenthesized_expression "(local_136 != '\0')" ( (binary_expression "local_136 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000a2b6b;" goto statement_identifier ;)) (labeled_statement "LAB_000a2d10:\n                    pppppppuVar29 = local_f0;" statement_identifier : (expression_statement "pppppppuVar29 = local_f0;" (assignment_expression "pppppppuVar29 = local_f0" identifier = identifier) ;)) (expression_statement "local_170 = *(uint ********)((int)local_158 + iVar19);" (assignment_expression "local_170 = *(uint ********)((int)local_158 + iVar19)" identifier = (pointer_expression "*(uint ********)((int)local_158 + iVar19)" * (cast_expression "(uint ********)((int)local_158 + iVar19)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "((int)local_158 + iVar19)" ( (binary_expression "(int)local_158 + iVar19" (cast_expression "(int)local_158" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) ))))) ;) (expression_statement "*(uint *********)(puVar24 + -0x10) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0x10) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0x10)" * (cast_expression "(uint *********)(puVar24 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19)" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)((int)local_15c + iVar19)" * (cast_expression "(undefined4 *)((int)local_15c + iVar19)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_15c + iVar19)" ( (binary_expression "(int)local_15c + iVar19" (cast_expression "(int)local_15c" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) ))))) ;) (expression_statement "*(uint ********)(puVar24 + -0x18) = local_170;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_170" (pointer_expression "*(uint ********)(puVar24 + -0x18)" * (cast_expression "(uint ********)(puVar24 + -0x18)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x18)" ( (binary_expression "puVar24 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x1c) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x1c) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x1c)" * (cast_expression "(uint ********)(puVar24 + -0x1c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x1c)" ( (binary_expression "puVar24 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x20) = local_154;" (assignment_expression "*(uint ********)(puVar24 + -0x20) = local_154" (pointer_expression "*(uint ********)(puVar24 + -0x20)" * (cast_expression "(uint ********)(puVar24 + -0x20)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x20)" ( (binary_expression "puVar24 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x24) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x24) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x24)" * (cast_expression "(uint ********)(puVar24 + -0x24)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x24)" ( (binary_expression "puVar24 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x28) = local_f0;" (assignment_expression "*(uint ********)(puVar24 + -0x28) = local_f0" (pointer_expression "*(uint ********)(puVar24 + -0x28)" * (cast_expression "(uint ********)(puVar24 + -0x28)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x28)" ( (binary_expression "puVar24 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar24 + -0x2c) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x2c) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x2c)" * (cast_expression "(uint ********)(puVar24 + -0x2c)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x2c)" ( (binary_expression "puVar24 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar24 + -0x30) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x30) = param_3" (pointer_expression "*(int *)(puVar24 + -0x30)" * (cast_expression "(int *)(puVar24 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x30)" ( (binary_expression "puVar24 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa2d54;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa2d54" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" * (cast_expression "(undefined4 *)(puVar24 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x34)" ( (binary_expression "puVar24 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_0008ff40();" (assignment_expression "uVar12 = FUN_0008ff40()" identifier = (call_expression "FUN_0008ff40()" identifier (argument_list "()" ( )))) ;) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" identifier = identifier) ;) (expression_statement "*(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;" (assignment_expression "*(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12" (pointer_expression "*(undefined4 *)((int)param_1[0xe] + iVar19)" * (cast_expression "(undefined4 *)((int)param_1[0xe] + iVar19)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1[0xe] + iVar19)" ( (binary_expression "(int)param_1[0xe] + iVar19" (cast_expression "(int)param_1[0xe]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[0xe]" identifier [ number_literal ])) + identifier) )))) = identifier) ;) (expression_statement "pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);" (assignment_expression "pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84)" identifier = (cast_expression "(uint *******)((uint)local_80 & (uint)local_84)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)local_80 & (uint)local_84)" ( (binary_expression "(uint)local_80 & (uint)local_84" (cast_expression "(uint)local_80" ( (type_descriptor "uint" type_identifier) ) identifier) & (cast_expression "(uint)local_84" ( (type_descriptor "uint" type_identifier) ) identifier)) )))) ;) (expression_statement "ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;" (assignment_expression "ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2" identifier = (binary_expression "param_1[0x21] + (int)pppppppuVar29 * 2" (subscript_expression "param_1[0x21]" identifier [ number_literal ]) + (binary_expression "(int)pppppppuVar29 * 2" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (if_statement "if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }" if (parenthesized_expression "(pppppppuVar22 == (uint *******)0xffffffff)" ( (binary_expression "pppppppuVar22 == (uint *******)0xffffffff" identifier == (cast_expression "(uint *******)0xffffffff" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }" { (expression_statement "*ppppppuVar21 = (uint *****)0xffffffff;" (assignment_expression "*ppppppuVar21 = (uint *****)0xffffffff" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "ppppppuVar21[1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[1]" identifier [ number_literal ]) = (cast_expression "(uint *****)0xffffffff" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) }) (else_clause "else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }" else (compound_statement "{\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }" { (expression_statement "*ppppppuVar21 = (uint *****)local_84;" (assignment_expression "*ppppppuVar21 = (uint *****)local_84" (pointer_expression "*ppppppuVar21" * identifier) = (cast_expression "(uint *****)local_84" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) (expression_statement "ppppppuVar21[1] = (uint *****)local_80;" (assignment_expression "ppppppuVar21[1] = (uint *****)local_80" (subscript_expression "ppppppuVar21[1]" identifier [ number_literal ]) = (cast_expression "(uint *****)local_80" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) identifier)) ;) }))) (if_statement "if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }" if (parenthesized_expression "((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0))" ( (binary_expression "(((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)" (parenthesized_expression "(((uint)local_84 & (uint)local_80) == 0xffffffff)" ( (binary_expression "((uint)local_84 & (uint)local_80) == 0xffffffff" (parenthesized_expression "((uint)local_84 & (uint)local_80)" ( (binary_expression "(uint)local_84 & (uint)local_80" (cast_expression "(uint)local_84" ( (type_descriptor "uint" type_identifier) ) identifier) & (cast_expression "(uint)local_80" ( (type_descriptor "uint" type_identifier) ) identifier)) )) == number_literal) )) && (parenthesized_expression "(local_170 != (uint *******)0x0)" ( (binary_expression "local_170 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ))) )) (compound_statement "{\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }" { (expression_statement "*(byte *)(param_1 + 0x13) = 1;" (assignment_expression "*(byte *)(param_1 + 0x13) = 1" (pointer_expression "*(byte *)(param_1 + 0x13)" * (cast_expression "(byte *)(param_1 + 0x13)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x13)" ( (binary_expression "param_1 + 0x13" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "pppppppuVar29 = local_84;" (assignment_expression "pppppppuVar29 = local_84" identifier = identifier) ;) (if_statement "if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }" if (parenthesized_expression "((char)local_140 == '\0')" ( (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }" { (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }" if (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" ( (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ]) == (cast_expression "(uint *****)0x0" ( (type_descriptor "uint *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }" { (expression_statement "*(undefined4 *)(puVar24 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -4)" * (cast_expression "(undefined4 *)(puVar24 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -4)" ( (binary_expression "puVar24 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -8)" * (cast_expression "(uint ********)(puVar24 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (binary_expression "local_120 + -0x371c1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" * (cast_expression "(undefined4 *)(puVar24 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x385a4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa43fb;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa43fb" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }" if (parenthesized_expression "(*(char *)((int)(*local_13c)[2] + 0x192d) != '\0')" ( (binary_expression "*(char *)((int)(*local_13c)[2] + 0x192d) != '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x192d)" * (cast_expression "(char *)((int)(*local_13c)[2] + 0x192d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(*local_13c)[2] + 0x192d)" ( (binary_expression "(int)(*local_13c)[2] + 0x192d" (cast_expression "(int)(*local_13c)[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" ( (pointer_expression "*local_13c" * identifier) )) [ number_literal ])) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }" { (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" identifier = false) ;) (expression_statement "bVar35 = ((uint)local_ec[2] & 2) == 0;" (assignment_expression "bVar35 = ((uint)local_ec[2] & 2) == 0" identifier = (binary_expression "((uint)local_ec[2] & 2) == 0" (parenthesized_expression "((uint)local_ec[2] & 2)" ( (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_ec[2]" identifier [ number_literal ])) & number_literal) )) == number_literal)) ;) (if_statement "if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }" if (parenthesized_expression "(bVar35)" ( identifier )) (compound_statement "{\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }" { (expression_statement "pppppppuVar29 = (uint *******)0xc;" (assignment_expression "pppppppuVar29 = (uint *******)0xc" identifier = (cast_expression "(uint *******)0xc" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xe0537);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xe0537)" identifier = (cast_expression "(byte *)((int)local_120 + -0xe0537)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xe0537)" ( (binary_expression "(int)local_120 + -0xe0537" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);" do (compound_statement "{\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar28 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar35)" ( identifier )) ;) (expression_statement "bVar34 = false;" (assignment_expression "bVar34 = false" identifier = false) ;) (expression_statement "bVar33 = (!bVar33 && !bVar35) == bVar33;" (assignment_expression "bVar33 = (!bVar33 && !bVar35) == bVar33" identifier = (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" ( (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" ! identifier) && (unary_expression "!bVar35" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (compound_statement "{\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }" { (expression_statement "pppppppuVar29 = (uint *******)0xd;" (assignment_expression "pppppppuVar29 = (uint *******)0xd" identifier = (cast_expression "(uint *******)0xd" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdd155);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdd155)" identifier = (cast_expression "(byte *)((int)local_120 + -0xdd155)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xdd155)" ( (binary_expression "(int)local_120 + -0xdd155" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);" do (compound_statement "{\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar34 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar34 = *(byte *)pppppppuVar28 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (expression_statement "bVar35 = false;" (assignment_expression "bVar35 = false" identifier = false) ;) (expression_statement "bVar33 = (!bVar34 && !bVar33) == bVar34;" (assignment_expression "bVar33 = (!bVar34 && !bVar33) == bVar34" identifier = (binary_expression "(!bVar34 && !bVar33) == bVar34" (parenthesized_expression "(!bVar34 && !bVar33)" ( (binary_expression "!bVar34 && !bVar33" (unary_expression "!bVar34" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (compound_statement "{\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }" { (expression_statement "pppppppuVar29 = (uint *******)0xd;" (assignment_expression "pppppppuVar29 = (uint *******)0xd" identifier = (cast_expression "(uint *******)0xd" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" identifier = identifier) ;) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xe052b);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xe052b)" identifier = (cast_expression "(byte *)((int)local_120 + -0xe052b)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_120 + -0xe052b)" ( (binary_expression "(int)local_120 + -0xe052b" (cast_expression "(int)local_120" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);" do (compound_statement "{\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar35 = *(byte *)pppppppuVar22 < *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 < *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar22 == *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 == *pbVar31" identifier = (binary_expression "*(byte *)pppppppuVar22 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" * (cast_expression "(byte *)pppppppuVar22" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*pbVar31" * identifier))) ;) (expression_statement "pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" identifier = (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" identifier + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (expression_statement "bVar34 = false;" (assignment_expression "bVar34 = false" identifier = false) ;) (expression_statement "bVar33 = (!bVar35 && !bVar33) == bVar35;" (assignment_expression "bVar33 = (!bVar35 && !bVar33) == bVar35" identifier = (binary_expression "(!bVar35 && !bVar33) == bVar35" (parenthesized_expression "(!bVar35 && !bVar33)" ( (binary_expression "!bVar35 && !bVar33" (unary_expression "!bVar35" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) == identifier)) ;) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" identifier = identifier) ;) (if_statement "if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }" if (parenthesized_expression "(!bVar33)" ( (unary_expression "!bVar33" ! identifier) )) (compound_statement "{\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }" { (expression_statement "pppppppuVar29 = (uint *******)0xe;" (assignment_expression "pppppppuVar29 = (uint *******)0xe" identifier = (cast_expression "(uint *******)0xe" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" identifier = identifier) ;) (expression_statement "pppppppuVar32 = local_120 + -0x37452;" (assignment_expression "pppppppuVar32 = local_120 + -0x37452" identifier = (binary_expression "local_120 + -0x37452" identifier + number_literal)) ;) (do_statement "do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);" do (compound_statement "{\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                }" { (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" if (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" ( (binary_expression "pppppppuVar29 == (uint *******)0x0" identifier == (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar29 + -1)" ( (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;" (assignment_expression "bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32" identifier = (binary_expression "*(byte *)pppppppuVar28 < *(byte *)pppppppuVar32" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) < (pointer_expression "*(byte *)pppppppuVar32" * (cast_expression "(byte *)pppppppuVar32" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)))) ;) (expression_statement "bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32" identifier = (binary_expression "*(byte *)pppppppuVar28 == *(byte *)pppppppuVar32" (pointer_expression "*(byte *)pppppppuVar28" * (cast_expression "(byte *)pppppppuVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) == (pointer_expression "*(byte *)pppppppuVar32" * (cast_expression "(byte *)pppppppuVar32" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)))) ;) (expression_statement "pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1)" identifier = (cast_expression "(uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppuVar32 + (uint)bVar36 * -2 + 1)" ( (binary_expression "(int)pppppppuVar32 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar32 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar32" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "(bVar33)" ( identifier )) ;) (if_statement "if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;" if (parenthesized_expression "((!bVar34 && !bVar33) != bVar34)" ( (binary_expression "(!bVar34 && !bVar33) != bVar34" (parenthesized_expression "(!bVar34 && !bVar33)" ( (binary_expression "!bVar34 && !bVar33" (unary_expression "!bVar34" ! identifier) && (unary_expression "!bVar33" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;)) })) (if_statement "if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }" if (parenthesized_expression "(local_b8 == local_b4)" ( (binary_expression "local_b8 == local_b4" identifier == identifier) )) (compound_statement "{\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }" { (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" * (cast_expression "(uint *********)(puVar24 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (pointer_expression "&local_f0" & identifier)) ;) (expression_statement "*(int **)(puVar24 + -0xc) = local_b8;" (assignment_expression "*(int **)(puVar24 + -0xc) = local_b8" (pointer_expression "*(int **)(puVar24 + -0xc)" * (cast_expression "(int **)(puVar24 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" identifier = (binary_expression "puVar24 + -0x10" identifier + number_literal)) ;) (expression_statement "*(int ***)(puVar24 + -0x10) = &local_bc;" (assignment_expression "*(int ***)(puVar24 + -0x10) = &local_bc" (pointer_expression "*(int ***)(puVar24 + -0x10)" * (cast_expression "(int ***)(puVar24 + -0x10)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_bc" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa42d3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa42d3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_31;" (assignment_expression "pppppppuVar29 = extraout_ECX_31" identifier = identifier) ;) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" identifier = identifier) ;) (goto_statement "goto LAB_000a3e57;" goto statement_identifier ;) })) (expression_statement "*local_b8 = (int)local_f0;" (assignment_expression "*local_b8 = (int)local_f0" (pointer_expression "*local_b8" * identifier) = (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_b8 = local_b8 + 1;" (assignment_expression "local_b8 = local_b8 + 1" identifier = (binary_expression "local_b8 + 1" identifier + number_literal)) ;) (goto_statement "goto LAB_000a23a1;" goto statement_identifier ;) })) })) (if_statement "if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }" if (parenthesized_expression "(local_c4 == local_c0)" ( (binary_expression "local_c4 == local_c0" identifier == identifier) )) (compound_statement "{\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }" { (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" * (cast_expression "(uint *********)(puVar24 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (pointer_expression "&local_f0" & identifier)) ;) (expression_statement "*(int **)(puVar24 + -0xc) = local_c4;" (assignment_expression "*(int **)(puVar24 + -0xc) = local_c4" (pointer_expression "*(int **)(puVar24 + -0xc)" * (cast_expression "(int **)(puVar24 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" identifier = (binary_expression "puVar24 + -0x10" identifier + number_literal)) ;) (expression_statement "*(int ***)(puVar24 + -0x10) = &local_c8;" (assignment_expression "*(int ***)(puVar24 + -0x10) = &local_c8" (pointer_expression "*(int ***)(puVar24 + -0x10)" * (cast_expression "(int ***)(puVar24 + -0x10)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_c8" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa428a;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa428a" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_30;" (assignment_expression "pppppppuVar29 = extraout_ECX_30" identifier = identifier) ;) (goto_statement "goto LAB_000a3e57;" goto statement_identifier ;) })) (expression_statement "*local_c4 = (int)local_f0;" (assignment_expression "*local_c4 = (int)local_f0" (pointer_expression "*local_c4" * identifier) = (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_c4 = local_c4 + 1;" (assignment_expression "local_c4 = local_c4 + 1" identifier = (binary_expression "local_c4 + 1" identifier + number_literal)) ;) })) })) })) })) }))) })) }) (else_clause "else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" else (if_statement "if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" if (parenthesized_expression "(local_dc == local_d8)" ( (binary_expression "local_dc == local_d8" identifier == identifier) )) (compound_statement "{\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }" { (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" * (cast_expression "(uint *********)(puVar24 + -8)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -8)" ( (binary_expression "puVar24 + -8" identifier + number_literal) )))) = (pointer_expression "&local_f0" & identifier)) ;) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_dc;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_dc" (pointer_expression "*(uint ********)(puVar24 + -0xc)" * (cast_expression "(uint ********)(puVar24 + -0xc)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0xc)" ( (binary_expression "puVar24 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" identifier = (binary_expression "puVar24 + -0x10" identifier + number_literal)) ;) (expression_statement "*(uint *********)(puVar24 + -0x10) = &local_e0;" (assignment_expression "*(uint *********)(puVar24 + -0x10) = &local_e0" (pointer_expression "*(uint *********)(puVar24 + -0x10)" * (cast_expression "(uint *********)(puVar24 + -0x10)" ( (type_descriptor "uint *********" type_identifier (abstract_pointer_declarator "*********" * (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_e0" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3e57;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3e57" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" identifier (argument_list "()" ( ))) ;) (expression_statement "pppppppuVar29 = extraout_ECX_21;" (assignment_expression "pppppppuVar29 = extraout_ECX_21" identifier = identifier) ;) (labeled_statement "LAB_000a3e57:\n              puVar24 = puVar25 + 0x10;" statement_identifier : (expression_statement "puVar24 = puVar25 + 0x10;" (assignment_expression "puVar24 = puVar25 + 0x10" identifier = (binary_expression "puVar25 + 0x10" identifier + number_literal)) ;)) }) (else_clause "else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" else (compound_statement "{\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" { (expression_statement "*local_dc = (uint ******)local_f0;" (assignment_expression "*local_dc = (uint ******)local_f0" (pointer_expression "*local_dc" * identifier) = (cast_expression "(uint ******)local_f0" ( (type_descriptor "uint ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "local_dc = local_dc + 1;" (assignment_expression "local_dc = local_dc + 1" identifier = (binary_expression "local_dc + 1" identifier + number_literal)) ;) }))))) }))) (labeled_statement "LAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);" statement_identifier : (expression_statement "pppppppuVar27 = (uint *******)((int)local_f0 + 1);" (assignment_expression "pppppppuVar27 = (uint *******)((int)local_f0 + 1)" identifier = (cast_expression "(uint *******)((int)local_f0 + 1)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_f0 + 1)" ( (binary_expression "(int)local_f0 + 1" (cast_expression "(int)local_f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;)) (expression_statement "pppppppuVar28 = local_134 + 0x10;" (assignment_expression "pppppppuVar28 = local_134 + 0x10" identifier = (binary_expression "local_134 + 0x10" identifier + number_literal)) ;) (expression_statement "local_f0 = pppppppuVar27;" (assignment_expression "local_f0 = pppppppuVar27" identifier = identifier) ;) (if_statement "if (local_130 <= pppppppuVar27) goto LAB_000a2740;" if (parenthesized_expression "(local_130 <= pppppppuVar27)" ( (binary_expression "local_130 <= pppppppuVar27" identifier <= identifier) )) (goto_statement "goto LAB_000a2740;" goto statement_identifier ;)) (expression_statement "local_ec = pppppppuVar28;" (assignment_expression "local_ec = pppppppuVar28" identifier = identifier) ;) (expression_statement "ppppppuVar21 = *pppppppuVar28;" (assignment_expression "ppppppuVar21 = *pppppppuVar28" identifier = (pointer_expression "*pppppppuVar28" * identifier)) ;) (expression_statement "local_124 = (uint *******)local_134[0x11];" (assignment_expression "local_124 = (uint *******)local_134[0x11]" identifier = (cast_expression "(uint *******)local_134[0x11]" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_134[0x11]" identifier [ number_literal ]))) ;) (expression_statement "puVar26 = puVar24;" (assignment_expression "puVar26 = puVar24" identifier = identifier) ;) (expression_statement "local_134 = pppppppuVar28;" (assignment_expression "local_134 = pppppppuVar28" identifier = identifier) ;) }) while (parenthesized_expression "(ppppppuVar21 < local_148)" ( (binary_expression "ppppppuVar21 < local_148" identifier < identifier) )) ;) })) (expression_statement "pppppppuVar22 = local_f0;" (assignment_expression "pppppppuVar22 = local_f0" identifier = identifier) ;) (expression_statement "local_ec = local_134;" (assignment_expression "local_ec = local_134" identifier = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x37485" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = (binary_expression "local_120 + -0x37485" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3657;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3657" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = gettext();" (assignment_expression "uVar12 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(uint *******)(puVar26 + -4) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar26 + -4) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar26 + -4)" * (cast_expression "(uint *******)(puVar26 + -4)" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(puVar26 + -4)" ( (binary_expression "puVar26 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar26 + -8)" * (cast_expression "(uint ********)(puVar26 + -8)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -8)" ( (binary_expression "puVar26 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = uVar12;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = uVar12" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" * (cast_expression "(undefined4 *)(puVar26 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0xc)" ( (binary_expression "puVar26 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" * (cast_expression "(uint ********)(puVar26 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar26 + -0x10)" ( (binary_expression "puVar26 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3665;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3665" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" * (cast_expression "(undefined4 *)(puVar26 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar26 + -0x14)" ( (binary_expression "puVar26 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00091980();" (call_expression "FUN_00091980()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" identifier = identifier) ;) }))) (if_statement "if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_bc != (int *)0x0)" ( (binary_expression "local_bc != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }" { (expression_statement "*(int **)(puVar24 + -0x10) = local_bc;" (assignment_expression "*(int **)(puVar24 + -0x10) = local_bc" (pointer_expression "*(int **)(puVar24 + -0x10)" * (cast_expression "(int **)(puVar24 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa28af;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa28af" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_c8 != (int *)0x0)" ( (binary_expression "local_c8 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }" { (expression_statement "*(int **)(puVar24 + -0x10) = local_c8;" (assignment_expression "*(int **)(puVar24 + -0x10) = local_c8" (pointer_expression "*(int **)(puVar24 + -0x10)" * (cast_expression "(int **)(puVar24 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa28cb;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa28cb" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_d4 != (int *)0x0)" ( (binary_expression "local_d4 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }" { (expression_statement "*(int **)(puVar24 + -0x10) = local_d4;" (assignment_expression "*(int **)(puVar24 + -0x10) = local_d4" (pointer_expression "*(int **)(puVar24 + -0x10)" * (cast_expression "(int **)(puVar24 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa28e7;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa28e7" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_e0 != (uint *******)0x0)" ( (binary_expression "local_e0 != (uint *******)0x0" identifier != (cast_expression "(uint *******)0x0" ( (type_descriptor "uint *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }" { (expression_statement "*(uint ********)(puVar24 + -0x10) = local_e0;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_e0" (pointer_expression "*(uint ********)(puVar24 + -0x10)" * (cast_expression "(uint ********)(puVar24 + -0x10)" ( (type_descriptor "uint ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2903;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2903" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }" if (parenthesized_expression "(local_b0 != (void *)0x0)" ( (binary_expression "local_b0 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }" { (expression_statement "*(void **)(puVar24 + -0x10) = local_b0;" (assignment_expression "*(void **)(puVar24 + -0x10) = local_b0" (pointer_expression "*(void **)(puVar24 + -0x10)" * (cast_expression "(void **)(puVar24 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa291f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa291f" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) })) }) (else_clause "else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }" else (compound_statement "{\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }" { (expression_statement "puVar24 = auStack_1ac;" (assignment_expression "puVar24 = auStack_1ac" identifier = identifier) ;) (if_statement "if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }" if (parenthesized_expression "(local_135 == '\0')" ( (binary_expression "local_135 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }" { (expression_statement "iVar19 = *param_4;" (assignment_expression "iVar19 = *param_4" identifier = (pointer_expression "*param_4" * identifier)) ;) (if_statement "if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" { (expression_statement "FUN_0005cea0(iVar19);" (call_expression "FUN_0005cea0(iVar19)" identifier (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "FUN_00180780(iVar19,0xc);" (call_expression "FUN_00180780(iVar19,0xc)" identifier (argument_list "(iVar19,0xc)" ( identifier , number_literal ))) ;) })) (expression_statement "iVar19 = param_4[1];" (assignment_expression "iVar19 = param_4[1]" identifier = (subscript_expression "param_4[1]" identifier [ number_literal ])) ;) (expression_statement "*param_4 = 0;" (assignment_expression "*param_4 = 0" (pointer_expression "*param_4" * identifier) = number_literal) ;) (if_statement "if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" { (expression_statement "FUN_0005cea0(iVar19);" (call_expression "FUN_0005cea0(iVar19)" identifier (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "FUN_00180780(iVar19,0xc);" (call_expression "FUN_00180780(iVar19,0xc)" identifier (argument_list "(iVar19,0xc)" ( identifier , number_literal ))) ;) })) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar24 = auStack_1ac;" (assignment_expression "puVar24 = auStack_1ac" identifier = identifier) ;) })) }))) (expression_statement "*(undefined4 **)(puVar24 + -0x10) = local_15c;" (assignment_expression "*(undefined4 **)(puVar24 + -0x10) = local_15c" (pointer_expression "*(undefined4 **)(puVar24 + -0x10)" * (cast_expression "(undefined4 **)(puVar24 + -0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2938;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2938" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 **)(puVar24 + -0x10) = local_158;" (assignment_expression "*(undefined4 **)(puVar24 + -0x10) = local_158" (pointer_expression "*(undefined4 **)(puVar24 + -0x10)" * (cast_expression "(undefined4 **)(puVar24 + -0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar24 + -0x10)" ( (binary_expression "puVar24 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2944;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2944" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" * (cast_expression "(undefined4 *)(puVar24 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + -0x14)" ( (binary_expression "puVar24 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))))) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (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 * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * 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 * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (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 * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (array_declarator IDENT [ LIT ])))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (array_declarator IDENT [ LIT ]))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (array_declarator IDENT [ LIT ]))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (compound_statement { (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) })) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) << LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 = (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (compound_statement { (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) }))) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (return_statement return ;) }))) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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) )))) ))))) ;) (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 (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ))) ^ LIT) )))) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT) < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) )) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) & LIT) )) != LIT) )))) )))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) || (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ))) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT) < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) || (parenthesized_expression ( (binary_expression IDENT <= IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) - (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + IDENT) )))) , (binary_expression (subscript_expression IDENT [ LIT ]) != IDENT)) ))) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) - (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) , (binary_expression (subscript_expression IDENT [ LIT ]) != IDENT)) ))) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })))) }))) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ]) [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (subscript_expression IDENT [ LIT ])) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT , (pointer_expression & IDENT) ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT) < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))) ))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) >> LIT) )) * LIT) ))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ])) == IDENT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (pointer_expression * IDENT))) ;) }))) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression LIT - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ))) >> LIT) )) * LIT) & LIT) )) * LIT)) + LIT) != IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (pointer_expression * IDENT)) != (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * IDENT) ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (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) )))) = LIT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))) >> LIT) )) * LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (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) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (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 * (abstract_pointer_declarator * (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) )))) = 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 = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = 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 ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ IDENT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 * (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) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (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) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) }) (else_clause else (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (call_expression IDENT (argument_list ( ))) ;) })))) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_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 *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT) < 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) )))) = (pointer_expression & IDENT)) ;) (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) )))) = (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) }))) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (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 * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( (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 *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (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) )))) = 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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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 = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) ;) })) (expression_statement (assignment_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) ;) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) <= IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (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 * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (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) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (subscript_expression (parenthesized_expression ( (pointer_expression * (subscript_expression IDENT [ LIT ])) )) [ (cast_expression ( (type_descriptor TYPE) ) 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 * (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 * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = 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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))))) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) }) (else_clause else (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (call_expression IDENT (argument_list ( ))) ;) })))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ IDENT ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (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 IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ IDENT ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (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 IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != IDENT) )) || (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (call_expression IDENT (argument_list ( ))) ;) })))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (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) )))) = 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 (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 IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (if_statement if (parenthesized_expression ( (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) )))) = 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 (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 (subscript_expression IDENT [ LIT ]) = LIT) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * 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 (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) }))) }) (else_clause else (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (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) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (char_literal ' escape_sequence '))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (char_literal ' escape_sequence '))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence '))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (call_expression IDENT (argument_list ( ))) ;) })) (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 (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ])) + LIT) )))) == (char_literal ' escape_sequence '))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_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 { (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 (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) 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 IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) | (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) | IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) * LIT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | (binary_expression LIT << (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) * LIT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))))) ;) })) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT))) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT))) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) & (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) * LIT)) ))))) )) != LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) & LIT) )) == LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) 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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) })) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) ))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (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 * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ])) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT <= (subscript_expression IDENT [ LIT ]))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ])) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (pointer_expression * IDENT)) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) != IDENT) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) <= IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) }))) })) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = 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 IDENT = IDENT) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (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 * (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 * (abstract_pointer_declarator * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) * LIT)) )))) ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) & (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) * LIT)) ))))) )) != LIT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (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) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = 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 * (abstract_pointer_declarator * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)))) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (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 (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ])) + 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 * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (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 * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = 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 ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))) < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (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 (call_expression IDENT (argument_list ( ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (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) ;) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (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 ( (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression 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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (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 (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = (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 * (abstract_pointer_declarator * (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 = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (break_statement break ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) ^ (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression IDENT = IDENT) ;) (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 ( (comma_expression (assignment_expression IDENT = IDENT) , (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_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 * (abstract_pointer_declarator * (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 * (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 (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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 * (abstract_pointer_declarator * (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (subscript_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (pointer_expression * IDENT) ))) [ LIT ]) % (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ]) = IDENT) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (pointer_expression * (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ])))) ;) (expression_statement (assignment_expression (pointer_expression * (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ])) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) IDENT)) ;) }))) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) })) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) && (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ))) )) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (char_literal ' escape_sequence '))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) 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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == LIT) )) (compound_statement { (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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 IDENT = (binary_expression IDENT + 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) )))) = (pointer_expression & 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) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & 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 IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_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 * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (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) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != LIT) )) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == LIT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) & LIT) )) == LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + IDENT) )))) = LIT) ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (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) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) 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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (subscript_expression IDENT [ LIT ]) [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ])) & (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (subscript_expression IDENT [ LIT ]) [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ])))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = (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 ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (call_expression IDENT (argument_list ( ))) ;) })) (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 (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ])) + 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 * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = (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 * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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 * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_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 * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression (parenthesized_expression ( (pointer_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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 ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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 (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) }))) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = 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 IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (subscript_expression IDENT [ LIT ]) [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ])) & (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (subscript_expression IDENT [ LIT ]) [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression 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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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 = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (call_expression IDENT (argument_list ( ))) ;) })) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression (parenthesized_expression ( (pointer_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = 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 = IDENT) ;) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (subscript_expression IDENT [ LIT ]) [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (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 (cast_expression ( (type_descriptor TYPE) ) 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 * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = 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 = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) IDENT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) == LIT) )) && (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 (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 (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ])) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) & LIT) )) == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) 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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) 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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) 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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) })) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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 IDENT = (binary_expression IDENT + 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) )))) = (pointer_expression & 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 IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })) })) (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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 IDENT = (binary_expression IDENT + 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) )))) = (pointer_expression & 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) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) })) })) })) }))) })) }) (else_clause else (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & 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) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }))))) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 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 * (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 != (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 * (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 != (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 * (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 != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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 != (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 * (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 ( ))) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = 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 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) ;) (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_000a1d70(uint *******param_1,int param_2,int param_3,int *param_4)\n\n{\n  uint ******ppppppuVar1;\n  uint *puVar2;\n  byte bVar3;\n  uint ***pppuVar4;\n  int iVar5;\n  code *pcVar6;\n  char cVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  uint ******ppppppuVar13;\n  uint ****ppppuVar14;\n  uint *****pppppuVar15;\n  undefined *puVar16;\n  uint ******ppppppuVar17;\n  uint *****pppppuVar18;\n  uint *******extraout_ECX;\n  int iVar19;\n  uint *******extraout_ECX_00;\n  uint ******ppppppuVar20;\n  uint *******extraout_ECX_01;\n  uint *******extraout_ECX_02;\n  uint *******extraout_ECX_03;\n  uint *******extraout_ECX_04;\n  uint *******extraout_ECX_05;\n  uint *******extraout_ECX_06;\n  uint *******extraout_ECX_07;\n  uint *******extraout_ECX_08;\n  uint *******extraout_ECX_09;\n  uint *******extraout_ECX_10;\n  uint *******extraout_ECX_11;\n  uint *******extraout_ECX_12;\n  uint *******extraout_ECX_13;\n  uint *******extraout_ECX_14;\n  uint *******extraout_ECX_15;\n  uint *******extraout_ECX_16;\n  uint *******extraout_ECX_17;\n  uint *******extraout_ECX_18;\n  uint *******extraout_ECX_19;\n  uint *******extraout_ECX_20;\n  uint *******extraout_ECX_21;\n  uint *******extraout_ECX_22;\n  uint *******extraout_ECX_23;\n  uint *******extraout_ECX_24;\n  uint *******extraout_ECX_25;\n  uint *******extraout_ECX_26;\n  uint *******extraout_ECX_27;\n  uint *******extraout_ECX_28;\n  uint *******extraout_ECX_29;\n  uint *******extraout_ECX_30;\n  uint *******extraout_ECX_31;\n  uint ******ppppppuVar21;\n  uint *******pppppppuVar22;\n  undefined1 *puVar23;\n  undefined1 *puVar24;\n  undefined1 *puVar26;\n  uint *******pppppppuVar27;\n  uint *******pppppppuVar28;\n  uint *******pppppppuVar29;\n  byte *pbVar30;\n  byte *pbVar31;\n  uint *******pppppppuVar32;\n  bool bVar33;\n  bool bVar34;\n  bool bVar35;\n  byte bVar36;\n  undefined1 auStack_1ac [8];\n  uint *******local_1a4;\n  uint *******local_1a0;\n  int local_19c;\n  uint *******local_198;\n  uint *******local_194;\n  uint *******local_190;\n  uint *******local_18c;\n  uint ******local_188;\n  uint *******local_184;\n  uint ******local_180;\n  uint *******local_17c;\n  uint *******local_178;\n  uint *******local_174;\n  uint *******local_170;\n  uint *******local_16c;\n  uint local_168;\n  uint ******local_164;\n  uint ******local_160;\n  undefined4 *local_15c;\n  undefined4 *local_158;\n  uint *******local_154;\n  uint ******local_150;\n  int local_14c;\n  uint ******local_148;\n  uint ******local_144;\n  uint *******local_140;\n  uint *******local_13c;\n  char local_138;\n  byte local_137;\n  byte local_136;\n  char local_135;\n  uint *******local_134;\n  uint *******local_130;\n  uint *******local_12c;\n  undefined4 local_128;\n  uint *******local_124;\n  uint *******local_120;\n  int *local_11c;\n  undefined4 local_118;\n  int local_110;\n  char local_10c [4];\n  undefined4 local_108;\n  uint *******local_100 [3];\n  undefined1 local_f1;\n  uint *******local_f0;\n  uint *******local_ec;\n  uint *******local_e8;\n  uint ******local_e4;\n  uint *******local_e0;\n  uint *******local_dc;\n  uint *******local_d8;\n  int *local_d4;\n  int *local_d0;\n  int *local_cc;\n  int *local_c8;\n  int *local_c4;\n  int *local_c0;\n  int *local_bc;\n  int *local_b8;\n  int *local_b4;\n  void *local_b0;\n  undefined4 local_ac;\n  void *local_a8;\n  uint local_a4;\n  byte *local_a0;\n  uint *******local_9c;\n  uint *******local_98;\n  uint ******local_94 [4];\n  uint *******local_84;\n  uint *******local_80;\n  uint ******local_7c [4];\n  uint *******local_6c;\n  undefined4 local_68;\n  uint *******local_64;\n  uint ******local_60;\n  uint *******local_5c;\n  uint ******local_58;\n  uint ******local_54;\n  uint ******local_50;\n  uint ******local_4c;\n  uint ******local_48;\n  uint ******local_44;\n  uint ******local_40;\n  uint ******local_3c;\n  uint ******local_38;\n  uint ******local_34;\n  uint ******local_30;\n  uint ******local_2c;\n  uint ******local_28;\n  uint ******local_24;\n  undefined1 *puVar25;\n  \n  bVar36 = 0;\n  local_120 = (uint *******)&__DT_PLTGOT;\n  local_13c = (uint *******)&DAT_00302378;\n  if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    \n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }\n  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);\n  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);\n  local_130 = (uint *******)param_1[10];\n  pppppppuVar22 = (uint *******)&DAT_00302378;\n  pppppppuVar29 = (uint *******)&__DT_PLTGOT;\n  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;\n  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }\nLAB_000a1e71:\n  pppppppuVar29 = local_124;\n  pppppppuVar22 = local_130;\n  ppppuVar14 = pppppuVar15[0x164f];\n  local_124 = (uint *******)((uint)local_124 & 0xffffff00);\n  if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }\n  if ((uint *******)0x3fffffff < local_130) {\n                    \n    FUN_001c5fe0();\n  }\n  local_14c = (int)local_130 * 4;\n  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);\n  iVar19 = local_14c;\n  puVar8 = local_158;\n  if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }\n                    \n  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);\n  puVar24 = auStack_1ac;\n  puVar26 = auStack_1ac;\n  pppppppuVar22 = (uint *******)(local_160 + 0x10);\n  puVar8 = local_15c;\n  local_134 = pppppppuVar22;\n  if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }\n  local_140 = (uint *******)0x0;\nLAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }\n  if (param_1[7] == (uint ******)0x0) {\n                    \n                    \n    FUN_000917c0();\n  }\n                    \n  local_137 = FUN_0005cf90(param_1[7]);\n  if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    \n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }\n  *(undefined4 **)(puVar24 + -0x10) = local_15c;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;\n  FUN_001807a0();\n  *(undefined4 **)(puVar24 + -0x10) = local_158;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;\n  FUN_001807a0();\n  return;\n}" (primitive_type "void") (function_declarator "FUN_000a1d70(uint *******param_1,int param_2,int param_3,int *param_4)" (identifier "FUN_000a1d70") (parameter_list "(uint *******param_1,int param_2,int param_3,int *param_4)" (( "(") (parameter_declaration "uint *******param_1" (type_identifier "uint") (pointer_declarator "*******param_1" (* "*") (pointer_declarator "******param_1" (* "*") (pointer_declarator "*****param_1" (* "*") (pointer_declarator "****param_1" (* "*") (pointer_declarator "***param_1" (* "*") (pointer_declarator "**param_1" (* "*") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))))))))) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) (, ",") (parameter_declaration "int param_3" (primitive_type "int") (identifier "param_3")) (, ",") (parameter_declaration "int *param_4" (primitive_type "int") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) () ")"))) (compound_statement "{\n  uint ******ppppppuVar1;\n  uint *puVar2;\n  byte bVar3;\n  uint ***pppuVar4;\n  int iVar5;\n  code *pcVar6;\n  char cVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  int *piVar11;\n  undefined4 uVar12;\n  uint ******ppppppuVar13;\n  uint ****ppppuVar14;\n  uint *****pppppuVar15;\n  undefined *puVar16;\n  uint ******ppppppuVar17;\n  uint *****pppppuVar18;\n  uint *******extraout_ECX;\n  int iVar19;\n  uint *******extraout_ECX_00;\n  uint ******ppppppuVar20;\n  uint *******extraout_ECX_01;\n  uint *******extraout_ECX_02;\n  uint *******extraout_ECX_03;\n  uint *******extraout_ECX_04;\n  uint *******extraout_ECX_05;\n  uint *******extraout_ECX_06;\n  uint *******extraout_ECX_07;\n  uint *******extraout_ECX_08;\n  uint *******extraout_ECX_09;\n  uint *******extraout_ECX_10;\n  uint *******extraout_ECX_11;\n  uint *******extraout_ECX_12;\n  uint *******extraout_ECX_13;\n  uint *******extraout_ECX_14;\n  uint *******extraout_ECX_15;\n  uint *******extraout_ECX_16;\n  uint *******extraout_ECX_17;\n  uint *******extraout_ECX_18;\n  uint *******extraout_ECX_19;\n  uint *******extraout_ECX_20;\n  uint *******extraout_ECX_21;\n  uint *******extraout_ECX_22;\n  uint *******extraout_ECX_23;\n  uint *******extraout_ECX_24;\n  uint *******extraout_ECX_25;\n  uint *******extraout_ECX_26;\n  uint *******extraout_ECX_27;\n  uint *******extraout_ECX_28;\n  uint *******extraout_ECX_29;\n  uint *******extraout_ECX_30;\n  uint *******extraout_ECX_31;\n  uint ******ppppppuVar21;\n  uint *******pppppppuVar22;\n  undefined1 *puVar23;\n  undefined1 *puVar24;\n  undefined1 *puVar26;\n  uint *******pppppppuVar27;\n  uint *******pppppppuVar28;\n  uint *******pppppppuVar29;\n  byte *pbVar30;\n  byte *pbVar31;\n  uint *******pppppppuVar32;\n  bool bVar33;\n  bool bVar34;\n  bool bVar35;\n  byte bVar36;\n  undefined1 auStack_1ac [8];\n  uint *******local_1a4;\n  uint *******local_1a0;\n  int local_19c;\n  uint *******local_198;\n  uint *******local_194;\n  uint *******local_190;\n  uint *******local_18c;\n  uint ******local_188;\n  uint *******local_184;\n  uint ******local_180;\n  uint *******local_17c;\n  uint *******local_178;\n  uint *******local_174;\n  uint *******local_170;\n  uint *******local_16c;\n  uint local_168;\n  uint ******local_164;\n  uint ******local_160;\n  undefined4 *local_15c;\n  undefined4 *local_158;\n  uint *******local_154;\n  uint ******local_150;\n  int local_14c;\n  uint ******local_148;\n  uint ******local_144;\n  uint *******local_140;\n  uint *******local_13c;\n  char local_138;\n  byte local_137;\n  byte local_136;\n  char local_135;\n  uint *******local_134;\n  uint *******local_130;\n  uint *******local_12c;\n  undefined4 local_128;\n  uint *******local_124;\n  uint *******local_120;\n  int *local_11c;\n  undefined4 local_118;\n  int local_110;\n  char local_10c [4];\n  undefined4 local_108;\n  uint *******local_100 [3];\n  undefined1 local_f1;\n  uint *******local_f0;\n  uint *******local_ec;\n  uint *******local_e8;\n  uint ******local_e4;\n  uint *******local_e0;\n  uint *******local_dc;\n  uint *******local_d8;\n  int *local_d4;\n  int *local_d0;\n  int *local_cc;\n  int *local_c8;\n  int *local_c4;\n  int *local_c0;\n  int *local_bc;\n  int *local_b8;\n  int *local_b4;\n  void *local_b0;\n  undefined4 local_ac;\n  void *local_a8;\n  uint local_a4;\n  byte *local_a0;\n  uint *******local_9c;\n  uint *******local_98;\n  uint ******local_94 [4];\n  uint *******local_84;\n  uint *******local_80;\n  uint ******local_7c [4];\n  uint *******local_6c;\n  undefined4 local_68;\n  uint *******local_64;\n  uint ******local_60;\n  uint *******local_5c;\n  uint ******local_58;\n  uint ******local_54;\n  uint ******local_50;\n  uint ******local_4c;\n  uint ******local_48;\n  uint ******local_44;\n  uint ******local_40;\n  uint ******local_3c;\n  uint ******local_38;\n  uint ******local_34;\n  uint ******local_30;\n  uint ******local_2c;\n  uint ******local_28;\n  uint ******local_24;\n  undefined1 *puVar25;\n  \n  bVar36 = 0;\n  local_120 = (uint *******)&__DT_PLTGOT;\n  local_13c = (uint *******)&DAT_00302378;\n  if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    \n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }\n  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);\n  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);\n  local_130 = (uint *******)param_1[10];\n  pppppppuVar22 = (uint *******)&DAT_00302378;\n  pppppppuVar29 = (uint *******)&__DT_PLTGOT;\n  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;\n  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }\nLAB_000a1e71:\n  pppppppuVar29 = local_124;\n  pppppppuVar22 = local_130;\n  ppppuVar14 = pppppuVar15[0x164f];\n  local_124 = (uint *******)((uint)local_124 & 0xffffff00);\n  if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }\n  if ((uint *******)0x3fffffff < local_130) {\n                    \n    FUN_001c5fe0();\n  }\n  local_14c = (int)local_130 * 4;\n  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);\n  iVar19 = local_14c;\n  puVar8 = local_158;\n  if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }\n                    \n  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);\n  puVar24 = auStack_1ac;\n  puVar26 = auStack_1ac;\n  pppppppuVar22 = (uint *******)(local_160 + 0x10);\n  puVar8 = local_15c;\n  local_134 = pppppppuVar22;\n  if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }\n  local_140 = (uint *******)0x0;\nLAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }\n  if (param_1[7] == (uint ******)0x0) {\n                    \n                    \n    FUN_000917c0();\n  }\n                    \n  local_137 = FUN_0005cf90(param_1[7]);\n  if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    \n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }\n  *(undefined4 **)(puVar24 + -0x10) = local_15c;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;\n  FUN_001807a0();\n  *(undefined4 **)(puVar24 + -0x10) = local_158;\n  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;\n  FUN_001807a0();\n  return;\n}" ({ "{") (declaration "uint ******ppppppuVar1;" (type_identifier "uint") (pointer_declarator "******ppppppuVar1" (* "*") (pointer_declarator "*****ppppppuVar1" (* "*") (pointer_declarator "****ppppppuVar1" (* "*") (pointer_declarator "***ppppppuVar1" (* "*") (pointer_declarator "**ppppppuVar1" (* "*") (pointer_declarator "*ppppppuVar1" (* "*") (identifier "ppppppuVar1"))))))) (; ";")) (declaration "uint *puVar2;" (type_identifier "uint") (pointer_declarator "*puVar2" (* "*") (identifier "puVar2")) (; ";")) (declaration "byte bVar3;" (type_identifier "byte") (identifier "bVar3") (; ";")) (declaration "uint ***pppuVar4;" (type_identifier "uint") (pointer_declarator "***pppuVar4" (* "*") (pointer_declarator "**pppuVar4" (* "*") (pointer_declarator "*pppuVar4" (* "*") (identifier "pppuVar4")))) (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "code *pcVar6;" (type_identifier "code") (pointer_declarator "*pcVar6" (* "*") (identifier "pcVar6")) (; ";")) (declaration "char cVar7;" (primitive_type "char") (identifier "cVar7") (; ";")) (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 "int *piVar11;" (primitive_type "int") (pointer_declarator "*piVar11" (* "*") (identifier "piVar11")) (; ";")) (declaration "undefined4 uVar12;" (type_identifier "undefined4") (identifier "uVar12") (; ";")) (declaration "uint ******ppppppuVar13;" (type_identifier "uint") (pointer_declarator "******ppppppuVar13" (* "*") (pointer_declarator "*****ppppppuVar13" (* "*") (pointer_declarator "****ppppppuVar13" (* "*") (pointer_declarator "***ppppppuVar13" (* "*") (pointer_declarator "**ppppppuVar13" (* "*") (pointer_declarator "*ppppppuVar13" (* "*") (identifier "ppppppuVar13"))))))) (; ";")) (declaration "uint ****ppppuVar14;" (type_identifier "uint") (pointer_declarator "****ppppuVar14" (* "*") (pointer_declarator "***ppppuVar14" (* "*") (pointer_declarator "**ppppuVar14" (* "*") (pointer_declarator "*ppppuVar14" (* "*") (identifier "ppppuVar14"))))) (; ";")) (declaration "uint *****pppppuVar15;" (type_identifier "uint") (pointer_declarator "*****pppppuVar15" (* "*") (pointer_declarator "****pppppuVar15" (* "*") (pointer_declarator "***pppppuVar15" (* "*") (pointer_declarator "**pppppuVar15" (* "*") (pointer_declarator "*pppppuVar15" (* "*") (identifier "pppppuVar15")))))) (; ";")) (declaration "undefined *puVar16;" (type_identifier "undefined") (pointer_declarator "*puVar16" (* "*") (identifier "puVar16")) (; ";")) (declaration "uint ******ppppppuVar17;" (type_identifier "uint") (pointer_declarator "******ppppppuVar17" (* "*") (pointer_declarator "*****ppppppuVar17" (* "*") (pointer_declarator "****ppppppuVar17" (* "*") (pointer_declarator "***ppppppuVar17" (* "*") (pointer_declarator "**ppppppuVar17" (* "*") (pointer_declarator "*ppppppuVar17" (* "*") (identifier "ppppppuVar17"))))))) (; ";")) (declaration "uint *****pppppuVar18;" (type_identifier "uint") (pointer_declarator "*****pppppuVar18" (* "*") (pointer_declarator "****pppppuVar18" (* "*") (pointer_declarator "***pppppuVar18" (* "*") (pointer_declarator "**pppppuVar18" (* "*") (pointer_declarator "*pppppuVar18" (* "*") (identifier "pppppuVar18")))))) (; ";")) (declaration "uint *******extraout_ECX;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX" (* "*") (pointer_declarator "******extraout_ECX" (* "*") (pointer_declarator "*****extraout_ECX" (* "*") (pointer_declarator "****extraout_ECX" (* "*") (pointer_declarator "***extraout_ECX" (* "*") (pointer_declarator "**extraout_ECX" (* "*") (pointer_declarator "*extraout_ECX" (* "*") (identifier "extraout_ECX")))))))) (; ";")) (declaration "int iVar19;" (primitive_type "int") (identifier "iVar19") (; ";")) (declaration "uint *******extraout_ECX_00;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_00" (* "*") (pointer_declarator "******extraout_ECX_00" (* "*") (pointer_declarator "*****extraout_ECX_00" (* "*") (pointer_declarator "****extraout_ECX_00" (* "*") (pointer_declarator "***extraout_ECX_00" (* "*") (pointer_declarator "**extraout_ECX_00" (* "*") (pointer_declarator "*extraout_ECX_00" (* "*") (identifier "extraout_ECX_00")))))))) (; ";")) (declaration "uint ******ppppppuVar20;" (type_identifier "uint") (pointer_declarator "******ppppppuVar20" (* "*") (pointer_declarator "*****ppppppuVar20" (* "*") (pointer_declarator "****ppppppuVar20" (* "*") (pointer_declarator "***ppppppuVar20" (* "*") (pointer_declarator "**ppppppuVar20" (* "*") (pointer_declarator "*ppppppuVar20" (* "*") (identifier "ppppppuVar20"))))))) (; ";")) (declaration "uint *******extraout_ECX_01;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_01" (* "*") (pointer_declarator "******extraout_ECX_01" (* "*") (pointer_declarator "*****extraout_ECX_01" (* "*") (pointer_declarator "****extraout_ECX_01" (* "*") (pointer_declarator "***extraout_ECX_01" (* "*") (pointer_declarator "**extraout_ECX_01" (* "*") (pointer_declarator "*extraout_ECX_01" (* "*") (identifier "extraout_ECX_01")))))))) (; ";")) (declaration "uint *******extraout_ECX_02;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_02" (* "*") (pointer_declarator "******extraout_ECX_02" (* "*") (pointer_declarator "*****extraout_ECX_02" (* "*") (pointer_declarator "****extraout_ECX_02" (* "*") (pointer_declarator "***extraout_ECX_02" (* "*") (pointer_declarator "**extraout_ECX_02" (* "*") (pointer_declarator "*extraout_ECX_02" (* "*") (identifier "extraout_ECX_02")))))))) (; ";")) (declaration "uint *******extraout_ECX_03;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_03" (* "*") (pointer_declarator "******extraout_ECX_03" (* "*") (pointer_declarator "*****extraout_ECX_03" (* "*") (pointer_declarator "****extraout_ECX_03" (* "*") (pointer_declarator "***extraout_ECX_03" (* "*") (pointer_declarator "**extraout_ECX_03" (* "*") (pointer_declarator "*extraout_ECX_03" (* "*") (identifier "extraout_ECX_03")))))))) (; ";")) (declaration "uint *******extraout_ECX_04;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_04" (* "*") (pointer_declarator "******extraout_ECX_04" (* "*") (pointer_declarator "*****extraout_ECX_04" (* "*") (pointer_declarator "****extraout_ECX_04" (* "*") (pointer_declarator "***extraout_ECX_04" (* "*") (pointer_declarator "**extraout_ECX_04" (* "*") (pointer_declarator "*extraout_ECX_04" (* "*") (identifier "extraout_ECX_04")))))))) (; ";")) (declaration "uint *******extraout_ECX_05;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_05" (* "*") (pointer_declarator "******extraout_ECX_05" (* "*") (pointer_declarator "*****extraout_ECX_05" (* "*") (pointer_declarator "****extraout_ECX_05" (* "*") (pointer_declarator "***extraout_ECX_05" (* "*") (pointer_declarator "**extraout_ECX_05" (* "*") (pointer_declarator "*extraout_ECX_05" (* "*") (identifier "extraout_ECX_05")))))))) (; ";")) (declaration "uint *******extraout_ECX_06;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_06" (* "*") (pointer_declarator "******extraout_ECX_06" (* "*") (pointer_declarator "*****extraout_ECX_06" (* "*") (pointer_declarator "****extraout_ECX_06" (* "*") (pointer_declarator "***extraout_ECX_06" (* "*") (pointer_declarator "**extraout_ECX_06" (* "*") (pointer_declarator "*extraout_ECX_06" (* "*") (identifier "extraout_ECX_06")))))))) (; ";")) (declaration "uint *******extraout_ECX_07;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_07" (* "*") (pointer_declarator "******extraout_ECX_07" (* "*") (pointer_declarator "*****extraout_ECX_07" (* "*") (pointer_declarator "****extraout_ECX_07" (* "*") (pointer_declarator "***extraout_ECX_07" (* "*") (pointer_declarator "**extraout_ECX_07" (* "*") (pointer_declarator "*extraout_ECX_07" (* "*") (identifier "extraout_ECX_07")))))))) (; ";")) (declaration "uint *******extraout_ECX_08;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_08" (* "*") (pointer_declarator "******extraout_ECX_08" (* "*") (pointer_declarator "*****extraout_ECX_08" (* "*") (pointer_declarator "****extraout_ECX_08" (* "*") (pointer_declarator "***extraout_ECX_08" (* "*") (pointer_declarator "**extraout_ECX_08" (* "*") (pointer_declarator "*extraout_ECX_08" (* "*") (identifier "extraout_ECX_08")))))))) (; ";")) (declaration "uint *******extraout_ECX_09;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_09" (* "*") (pointer_declarator "******extraout_ECX_09" (* "*") (pointer_declarator "*****extraout_ECX_09" (* "*") (pointer_declarator "****extraout_ECX_09" (* "*") (pointer_declarator "***extraout_ECX_09" (* "*") (pointer_declarator "**extraout_ECX_09" (* "*") (pointer_declarator "*extraout_ECX_09" (* "*") (identifier "extraout_ECX_09")))))))) (; ";")) (declaration "uint *******extraout_ECX_10;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_10" (* "*") (pointer_declarator "******extraout_ECX_10" (* "*") (pointer_declarator "*****extraout_ECX_10" (* "*") (pointer_declarator "****extraout_ECX_10" (* "*") (pointer_declarator "***extraout_ECX_10" (* "*") (pointer_declarator "**extraout_ECX_10" (* "*") (pointer_declarator "*extraout_ECX_10" (* "*") (identifier "extraout_ECX_10")))))))) (; ";")) (declaration "uint *******extraout_ECX_11;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_11" (* "*") (pointer_declarator "******extraout_ECX_11" (* "*") (pointer_declarator "*****extraout_ECX_11" (* "*") (pointer_declarator "****extraout_ECX_11" (* "*") (pointer_declarator "***extraout_ECX_11" (* "*") (pointer_declarator "**extraout_ECX_11" (* "*") (pointer_declarator "*extraout_ECX_11" (* "*") (identifier "extraout_ECX_11")))))))) (; ";")) (declaration "uint *******extraout_ECX_12;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_12" (* "*") (pointer_declarator "******extraout_ECX_12" (* "*") (pointer_declarator "*****extraout_ECX_12" (* "*") (pointer_declarator "****extraout_ECX_12" (* "*") (pointer_declarator "***extraout_ECX_12" (* "*") (pointer_declarator "**extraout_ECX_12" (* "*") (pointer_declarator "*extraout_ECX_12" (* "*") (identifier "extraout_ECX_12")))))))) (; ";")) (declaration "uint *******extraout_ECX_13;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_13" (* "*") (pointer_declarator "******extraout_ECX_13" (* "*") (pointer_declarator "*****extraout_ECX_13" (* "*") (pointer_declarator "****extraout_ECX_13" (* "*") (pointer_declarator "***extraout_ECX_13" (* "*") (pointer_declarator "**extraout_ECX_13" (* "*") (pointer_declarator "*extraout_ECX_13" (* "*") (identifier "extraout_ECX_13")))))))) (; ";")) (declaration "uint *******extraout_ECX_14;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_14" (* "*") (pointer_declarator "******extraout_ECX_14" (* "*") (pointer_declarator "*****extraout_ECX_14" (* "*") (pointer_declarator "****extraout_ECX_14" (* "*") (pointer_declarator "***extraout_ECX_14" (* "*") (pointer_declarator "**extraout_ECX_14" (* "*") (pointer_declarator "*extraout_ECX_14" (* "*") (identifier "extraout_ECX_14")))))))) (; ";")) (declaration "uint *******extraout_ECX_15;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_15" (* "*") (pointer_declarator "******extraout_ECX_15" (* "*") (pointer_declarator "*****extraout_ECX_15" (* "*") (pointer_declarator "****extraout_ECX_15" (* "*") (pointer_declarator "***extraout_ECX_15" (* "*") (pointer_declarator "**extraout_ECX_15" (* "*") (pointer_declarator "*extraout_ECX_15" (* "*") (identifier "extraout_ECX_15")))))))) (; ";")) (declaration "uint *******extraout_ECX_16;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_16" (* "*") (pointer_declarator "******extraout_ECX_16" (* "*") (pointer_declarator "*****extraout_ECX_16" (* "*") (pointer_declarator "****extraout_ECX_16" (* "*") (pointer_declarator "***extraout_ECX_16" (* "*") (pointer_declarator "**extraout_ECX_16" (* "*") (pointer_declarator "*extraout_ECX_16" (* "*") (identifier "extraout_ECX_16")))))))) (; ";")) (declaration "uint *******extraout_ECX_17;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_17" (* "*") (pointer_declarator "******extraout_ECX_17" (* "*") (pointer_declarator "*****extraout_ECX_17" (* "*") (pointer_declarator "****extraout_ECX_17" (* "*") (pointer_declarator "***extraout_ECX_17" (* "*") (pointer_declarator "**extraout_ECX_17" (* "*") (pointer_declarator "*extraout_ECX_17" (* "*") (identifier "extraout_ECX_17")))))))) (; ";")) (declaration "uint *******extraout_ECX_18;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_18" (* "*") (pointer_declarator "******extraout_ECX_18" (* "*") (pointer_declarator "*****extraout_ECX_18" (* "*") (pointer_declarator "****extraout_ECX_18" (* "*") (pointer_declarator "***extraout_ECX_18" (* "*") (pointer_declarator "**extraout_ECX_18" (* "*") (pointer_declarator "*extraout_ECX_18" (* "*") (identifier "extraout_ECX_18")))))))) (; ";")) (declaration "uint *******extraout_ECX_19;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_19" (* "*") (pointer_declarator "******extraout_ECX_19" (* "*") (pointer_declarator "*****extraout_ECX_19" (* "*") (pointer_declarator "****extraout_ECX_19" (* "*") (pointer_declarator "***extraout_ECX_19" (* "*") (pointer_declarator "**extraout_ECX_19" (* "*") (pointer_declarator "*extraout_ECX_19" (* "*") (identifier "extraout_ECX_19")))))))) (; ";")) (declaration "uint *******extraout_ECX_20;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_20" (* "*") (pointer_declarator "******extraout_ECX_20" (* "*") (pointer_declarator "*****extraout_ECX_20" (* "*") (pointer_declarator "****extraout_ECX_20" (* "*") (pointer_declarator "***extraout_ECX_20" (* "*") (pointer_declarator "**extraout_ECX_20" (* "*") (pointer_declarator "*extraout_ECX_20" (* "*") (identifier "extraout_ECX_20")))))))) (; ";")) (declaration "uint *******extraout_ECX_21;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_21" (* "*") (pointer_declarator "******extraout_ECX_21" (* "*") (pointer_declarator "*****extraout_ECX_21" (* "*") (pointer_declarator "****extraout_ECX_21" (* "*") (pointer_declarator "***extraout_ECX_21" (* "*") (pointer_declarator "**extraout_ECX_21" (* "*") (pointer_declarator "*extraout_ECX_21" (* "*") (identifier "extraout_ECX_21")))))))) (; ";")) (declaration "uint *******extraout_ECX_22;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_22" (* "*") (pointer_declarator "******extraout_ECX_22" (* "*") (pointer_declarator "*****extraout_ECX_22" (* "*") (pointer_declarator "****extraout_ECX_22" (* "*") (pointer_declarator "***extraout_ECX_22" (* "*") (pointer_declarator "**extraout_ECX_22" (* "*") (pointer_declarator "*extraout_ECX_22" (* "*") (identifier "extraout_ECX_22")))))))) (; ";")) (declaration "uint *******extraout_ECX_23;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_23" (* "*") (pointer_declarator "******extraout_ECX_23" (* "*") (pointer_declarator "*****extraout_ECX_23" (* "*") (pointer_declarator "****extraout_ECX_23" (* "*") (pointer_declarator "***extraout_ECX_23" (* "*") (pointer_declarator "**extraout_ECX_23" (* "*") (pointer_declarator "*extraout_ECX_23" (* "*") (identifier "extraout_ECX_23")))))))) (; ";")) (declaration "uint *******extraout_ECX_24;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_24" (* "*") (pointer_declarator "******extraout_ECX_24" (* "*") (pointer_declarator "*****extraout_ECX_24" (* "*") (pointer_declarator "****extraout_ECX_24" (* "*") (pointer_declarator "***extraout_ECX_24" (* "*") (pointer_declarator "**extraout_ECX_24" (* "*") (pointer_declarator "*extraout_ECX_24" (* "*") (identifier "extraout_ECX_24")))))))) (; ";")) (declaration "uint *******extraout_ECX_25;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_25" (* "*") (pointer_declarator "******extraout_ECX_25" (* "*") (pointer_declarator "*****extraout_ECX_25" (* "*") (pointer_declarator "****extraout_ECX_25" (* "*") (pointer_declarator "***extraout_ECX_25" (* "*") (pointer_declarator "**extraout_ECX_25" (* "*") (pointer_declarator "*extraout_ECX_25" (* "*") (identifier "extraout_ECX_25")))))))) (; ";")) (declaration "uint *******extraout_ECX_26;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_26" (* "*") (pointer_declarator "******extraout_ECX_26" (* "*") (pointer_declarator "*****extraout_ECX_26" (* "*") (pointer_declarator "****extraout_ECX_26" (* "*") (pointer_declarator "***extraout_ECX_26" (* "*") (pointer_declarator "**extraout_ECX_26" (* "*") (pointer_declarator "*extraout_ECX_26" (* "*") (identifier "extraout_ECX_26")))))))) (; ";")) (declaration "uint *******extraout_ECX_27;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_27" (* "*") (pointer_declarator "******extraout_ECX_27" (* "*") (pointer_declarator "*****extraout_ECX_27" (* "*") (pointer_declarator "****extraout_ECX_27" (* "*") (pointer_declarator "***extraout_ECX_27" (* "*") (pointer_declarator "**extraout_ECX_27" (* "*") (pointer_declarator "*extraout_ECX_27" (* "*") (identifier "extraout_ECX_27")))))))) (; ";")) (declaration "uint *******extraout_ECX_28;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_28" (* "*") (pointer_declarator "******extraout_ECX_28" (* "*") (pointer_declarator "*****extraout_ECX_28" (* "*") (pointer_declarator "****extraout_ECX_28" (* "*") (pointer_declarator "***extraout_ECX_28" (* "*") (pointer_declarator "**extraout_ECX_28" (* "*") (pointer_declarator "*extraout_ECX_28" (* "*") (identifier "extraout_ECX_28")))))))) (; ";")) (declaration "uint *******extraout_ECX_29;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_29" (* "*") (pointer_declarator "******extraout_ECX_29" (* "*") (pointer_declarator "*****extraout_ECX_29" (* "*") (pointer_declarator "****extraout_ECX_29" (* "*") (pointer_declarator "***extraout_ECX_29" (* "*") (pointer_declarator "**extraout_ECX_29" (* "*") (pointer_declarator "*extraout_ECX_29" (* "*") (identifier "extraout_ECX_29")))))))) (; ";")) (declaration "uint *******extraout_ECX_30;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_30" (* "*") (pointer_declarator "******extraout_ECX_30" (* "*") (pointer_declarator "*****extraout_ECX_30" (* "*") (pointer_declarator "****extraout_ECX_30" (* "*") (pointer_declarator "***extraout_ECX_30" (* "*") (pointer_declarator "**extraout_ECX_30" (* "*") (pointer_declarator "*extraout_ECX_30" (* "*") (identifier "extraout_ECX_30")))))))) (; ";")) (declaration "uint *******extraout_ECX_31;" (type_identifier "uint") (pointer_declarator "*******extraout_ECX_31" (* "*") (pointer_declarator "******extraout_ECX_31" (* "*") (pointer_declarator "*****extraout_ECX_31" (* "*") (pointer_declarator "****extraout_ECX_31" (* "*") (pointer_declarator "***extraout_ECX_31" (* "*") (pointer_declarator "**extraout_ECX_31" (* "*") (pointer_declarator "*extraout_ECX_31" (* "*") (identifier "extraout_ECX_31")))))))) (; ";")) (declaration "uint ******ppppppuVar21;" (type_identifier "uint") (pointer_declarator "******ppppppuVar21" (* "*") (pointer_declarator "*****ppppppuVar21" (* "*") (pointer_declarator "****ppppppuVar21" (* "*") (pointer_declarator "***ppppppuVar21" (* "*") (pointer_declarator "**ppppppuVar21" (* "*") (pointer_declarator "*ppppppuVar21" (* "*") (identifier "ppppppuVar21"))))))) (; ";")) (declaration "uint *******pppppppuVar22;" (type_identifier "uint") (pointer_declarator "*******pppppppuVar22" (* "*") (pointer_declarator "******pppppppuVar22" (* "*") (pointer_declarator "*****pppppppuVar22" (* "*") (pointer_declarator "****pppppppuVar22" (* "*") (pointer_declarator "***pppppppuVar22" (* "*") (pointer_declarator "**pppppppuVar22" (* "*") (pointer_declarator "*pppppppuVar22" (* "*") (identifier "pppppppuVar22")))))))) (; ";")) (declaration "undefined1 *puVar23;" (type_identifier "undefined1") (pointer_declarator "*puVar23" (* "*") (identifier "puVar23")) (; ";")) (declaration "undefined1 *puVar24;" (type_identifier "undefined1") (pointer_declarator "*puVar24" (* "*") (identifier "puVar24")) (; ";")) (declaration "undefined1 *puVar26;" (type_identifier "undefined1") (pointer_declarator "*puVar26" (* "*") (identifier "puVar26")) (; ";")) (declaration "uint *******pppppppuVar27;" (type_identifier "uint") (pointer_declarator "*******pppppppuVar27" (* "*") (pointer_declarator "******pppppppuVar27" (* "*") (pointer_declarator "*****pppppppuVar27" (* "*") (pointer_declarator "****pppppppuVar27" (* "*") (pointer_declarator "***pppppppuVar27" (* "*") (pointer_declarator "**pppppppuVar27" (* "*") (pointer_declarator "*pppppppuVar27" (* "*") (identifier "pppppppuVar27")))))))) (; ";")) (declaration "uint *******pppppppuVar28;" (type_identifier "uint") (pointer_declarator "*******pppppppuVar28" (* "*") (pointer_declarator "******pppppppuVar28" (* "*") (pointer_declarator "*****pppppppuVar28" (* "*") (pointer_declarator "****pppppppuVar28" (* "*") (pointer_declarator "***pppppppuVar28" (* "*") (pointer_declarator "**pppppppuVar28" (* "*") (pointer_declarator "*pppppppuVar28" (* "*") (identifier "pppppppuVar28")))))))) (; ";")) (declaration "uint *******pppppppuVar29;" (type_identifier "uint") (pointer_declarator "*******pppppppuVar29" (* "*") (pointer_declarator "******pppppppuVar29" (* "*") (pointer_declarator "*****pppppppuVar29" (* "*") (pointer_declarator "****pppppppuVar29" (* "*") (pointer_declarator "***pppppppuVar29" (* "*") (pointer_declarator "**pppppppuVar29" (* "*") (pointer_declarator "*pppppppuVar29" (* "*") (identifier "pppppppuVar29")))))))) (; ";")) (declaration "byte *pbVar30;" (type_identifier "byte") (pointer_declarator "*pbVar30" (* "*") (identifier "pbVar30")) (; ";")) (declaration "byte *pbVar31;" (type_identifier "byte") (pointer_declarator "*pbVar31" (* "*") (identifier "pbVar31")) (; ";")) (declaration "uint *******pppppppuVar32;" (type_identifier "uint") (pointer_declarator "*******pppppppuVar32" (* "*") (pointer_declarator "******pppppppuVar32" (* "*") (pointer_declarator "*****pppppppuVar32" (* "*") (pointer_declarator "****pppppppuVar32" (* "*") (pointer_declarator "***pppppppuVar32" (* "*") (pointer_declarator "**pppppppuVar32" (* "*") (pointer_declarator "*pppppppuVar32" (* "*") (identifier "pppppppuVar32")))))))) (; ";")) (declaration "bool bVar33;" (primitive_type "bool") (identifier "bVar33") (; ";")) (declaration "bool bVar34;" (primitive_type "bool") (identifier "bVar34") (; ";")) (declaration "bool bVar35;" (primitive_type "bool") (identifier "bVar35") (; ";")) (declaration "byte bVar36;" (type_identifier "byte") (identifier "bVar36") (; ";")) (declaration "undefined1 auStack_1ac [8];" (type_identifier "undefined1") (array_declarator "auStack_1ac [8]" (identifier "auStack_1ac") ([ "[") (number_literal "8") (] "]")) (; ";")) (declaration "uint *******local_1a4;" (type_identifier "uint") (pointer_declarator "*******local_1a4" (* "*") (pointer_declarator "******local_1a4" (* "*") (pointer_declarator "*****local_1a4" (* "*") (pointer_declarator "****local_1a4" (* "*") (pointer_declarator "***local_1a4" (* "*") (pointer_declarator "**local_1a4" (* "*") (pointer_declarator "*local_1a4" (* "*") (identifier "local_1a4")))))))) (; ";")) (declaration "uint *******local_1a0;" (type_identifier "uint") (pointer_declarator "*******local_1a0" (* "*") (pointer_declarator "******local_1a0" (* "*") (pointer_declarator "*****local_1a0" (* "*") (pointer_declarator "****local_1a0" (* "*") (pointer_declarator "***local_1a0" (* "*") (pointer_declarator "**local_1a0" (* "*") (pointer_declarator "*local_1a0" (* "*") (identifier "local_1a0")))))))) (; ";")) (declaration "int local_19c;" (primitive_type "int") (identifier "local_19c") (; ";")) (declaration "uint *******local_198;" (type_identifier "uint") (pointer_declarator "*******local_198" (* "*") (pointer_declarator "******local_198" (* "*") (pointer_declarator "*****local_198" (* "*") (pointer_declarator "****local_198" (* "*") (pointer_declarator "***local_198" (* "*") (pointer_declarator "**local_198" (* "*") (pointer_declarator "*local_198" (* "*") (identifier "local_198")))))))) (; ";")) (declaration "uint *******local_194;" (type_identifier "uint") (pointer_declarator "*******local_194" (* "*") (pointer_declarator "******local_194" (* "*") (pointer_declarator "*****local_194" (* "*") (pointer_declarator "****local_194" (* "*") (pointer_declarator "***local_194" (* "*") (pointer_declarator "**local_194" (* "*") (pointer_declarator "*local_194" (* "*") (identifier "local_194")))))))) (; ";")) (declaration "uint *******local_190;" (type_identifier "uint") (pointer_declarator "*******local_190" (* "*") (pointer_declarator "******local_190" (* "*") (pointer_declarator "*****local_190" (* "*") (pointer_declarator "****local_190" (* "*") (pointer_declarator "***local_190" (* "*") (pointer_declarator "**local_190" (* "*") (pointer_declarator "*local_190" (* "*") (identifier "local_190")))))))) (; ";")) (declaration "uint *******local_18c;" (type_identifier "uint") (pointer_declarator "*******local_18c" (* "*") (pointer_declarator "******local_18c" (* "*") (pointer_declarator "*****local_18c" (* "*") (pointer_declarator "****local_18c" (* "*") (pointer_declarator "***local_18c" (* "*") (pointer_declarator "**local_18c" (* "*") (pointer_declarator "*local_18c" (* "*") (identifier "local_18c")))))))) (; ";")) (declaration "uint ******local_188;" (type_identifier "uint") (pointer_declarator "******local_188" (* "*") (pointer_declarator "*****local_188" (* "*") (pointer_declarator "****local_188" (* "*") (pointer_declarator "***local_188" (* "*") (pointer_declarator "**local_188" (* "*") (pointer_declarator "*local_188" (* "*") (identifier "local_188"))))))) (; ";")) (declaration "uint *******local_184;" (type_identifier "uint") (pointer_declarator "*******local_184" (* "*") (pointer_declarator "******local_184" (* "*") (pointer_declarator "*****local_184" (* "*") (pointer_declarator "****local_184" (* "*") (pointer_declarator "***local_184" (* "*") (pointer_declarator "**local_184" (* "*") (pointer_declarator "*local_184" (* "*") (identifier "local_184")))))))) (; ";")) (declaration "uint ******local_180;" (type_identifier "uint") (pointer_declarator "******local_180" (* "*") (pointer_declarator "*****local_180" (* "*") (pointer_declarator "****local_180" (* "*") (pointer_declarator "***local_180" (* "*") (pointer_declarator "**local_180" (* "*") (pointer_declarator "*local_180" (* "*") (identifier "local_180"))))))) (; ";")) (declaration "uint *******local_17c;" (type_identifier "uint") (pointer_declarator "*******local_17c" (* "*") (pointer_declarator "******local_17c" (* "*") (pointer_declarator "*****local_17c" (* "*") (pointer_declarator "****local_17c" (* "*") (pointer_declarator "***local_17c" (* "*") (pointer_declarator "**local_17c" (* "*") (pointer_declarator "*local_17c" (* "*") (identifier "local_17c")))))))) (; ";")) (declaration "uint *******local_178;" (type_identifier "uint") (pointer_declarator "*******local_178" (* "*") (pointer_declarator "******local_178" (* "*") (pointer_declarator "*****local_178" (* "*") (pointer_declarator "****local_178" (* "*") (pointer_declarator "***local_178" (* "*") (pointer_declarator "**local_178" (* "*") (pointer_declarator "*local_178" (* "*") (identifier "local_178")))))))) (; ";")) (declaration "uint *******local_174;" (type_identifier "uint") (pointer_declarator "*******local_174" (* "*") (pointer_declarator "******local_174" (* "*") (pointer_declarator "*****local_174" (* "*") (pointer_declarator "****local_174" (* "*") (pointer_declarator "***local_174" (* "*") (pointer_declarator "**local_174" (* "*") (pointer_declarator "*local_174" (* "*") (identifier "local_174")))))))) (; ";")) (declaration "uint *******local_170;" (type_identifier "uint") (pointer_declarator "*******local_170" (* "*") (pointer_declarator "******local_170" (* "*") (pointer_declarator "*****local_170" (* "*") (pointer_declarator "****local_170" (* "*") (pointer_declarator "***local_170" (* "*") (pointer_declarator "**local_170" (* "*") (pointer_declarator "*local_170" (* "*") (identifier "local_170")))))))) (; ";")) (declaration "uint *******local_16c;" (type_identifier "uint") (pointer_declarator "*******local_16c" (* "*") (pointer_declarator "******local_16c" (* "*") (pointer_declarator "*****local_16c" (* "*") (pointer_declarator "****local_16c" (* "*") (pointer_declarator "***local_16c" (* "*") (pointer_declarator "**local_16c" (* "*") (pointer_declarator "*local_16c" (* "*") (identifier "local_16c")))))))) (; ";")) (declaration "uint local_168;" (type_identifier "uint") (identifier "local_168") (; ";")) (declaration "uint ******local_164;" (type_identifier "uint") (pointer_declarator "******local_164" (* "*") (pointer_declarator "*****local_164" (* "*") (pointer_declarator "****local_164" (* "*") (pointer_declarator "***local_164" (* "*") (pointer_declarator "**local_164" (* "*") (pointer_declarator "*local_164" (* "*") (identifier "local_164"))))))) (; ";")) (declaration "uint ******local_160;" (type_identifier "uint") (pointer_declarator "******local_160" (* "*") (pointer_declarator "*****local_160" (* "*") (pointer_declarator "****local_160" (* "*") (pointer_declarator "***local_160" (* "*") (pointer_declarator "**local_160" (* "*") (pointer_declarator "*local_160" (* "*") (identifier "local_160"))))))) (; ";")) (declaration "undefined4 *local_15c;" (type_identifier "undefined4") (pointer_declarator "*local_15c" (* "*") (identifier "local_15c")) (; ";")) (declaration "undefined4 *local_158;" (type_identifier "undefined4") (pointer_declarator "*local_158" (* "*") (identifier "local_158")) (; ";")) (declaration "uint *******local_154;" (type_identifier "uint") (pointer_declarator "*******local_154" (* "*") (pointer_declarator "******local_154" (* "*") (pointer_declarator "*****local_154" (* "*") (pointer_declarator "****local_154" (* "*") (pointer_declarator "***local_154" (* "*") (pointer_declarator "**local_154" (* "*") (pointer_declarator "*local_154" (* "*") (identifier "local_154")))))))) (; ";")) (declaration "uint ******local_150;" (type_identifier "uint") (pointer_declarator "******local_150" (* "*") (pointer_declarator "*****local_150" (* "*") (pointer_declarator "****local_150" (* "*") (pointer_declarator "***local_150" (* "*") (pointer_declarator "**local_150" (* "*") (pointer_declarator "*local_150" (* "*") (identifier "local_150"))))))) (; ";")) (declaration "int local_14c;" (primitive_type "int") (identifier "local_14c") (; ";")) (declaration "uint ******local_148;" (type_identifier "uint") (pointer_declarator "******local_148" (* "*") (pointer_declarator "*****local_148" (* "*") (pointer_declarator "****local_148" (* "*") (pointer_declarator "***local_148" (* "*") (pointer_declarator "**local_148" (* "*") (pointer_declarator "*local_148" (* "*") (identifier "local_148"))))))) (; ";")) (declaration "uint ******local_144;" (type_identifier "uint") (pointer_declarator "******local_144" (* "*") (pointer_declarator "*****local_144" (* "*") (pointer_declarator "****local_144" (* "*") (pointer_declarator "***local_144" (* "*") (pointer_declarator "**local_144" (* "*") (pointer_declarator "*local_144" (* "*") (identifier "local_144"))))))) (; ";")) (declaration "uint *******local_140;" (type_identifier "uint") (pointer_declarator "*******local_140" (* "*") (pointer_declarator "******local_140" (* "*") (pointer_declarator "*****local_140" (* "*") (pointer_declarator "****local_140" (* "*") (pointer_declarator "***local_140" (* "*") (pointer_declarator "**local_140" (* "*") (pointer_declarator "*local_140" (* "*") (identifier "local_140")))))))) (; ";")) (declaration "uint *******local_13c;" (type_identifier "uint") (pointer_declarator "*******local_13c" (* "*") (pointer_declarator "******local_13c" (* "*") (pointer_declarator "*****local_13c" (* "*") (pointer_declarator "****local_13c" (* "*") (pointer_declarator "***local_13c" (* "*") (pointer_declarator "**local_13c" (* "*") (pointer_declarator "*local_13c" (* "*") (identifier "local_13c")))))))) (; ";")) (declaration "char local_138;" (primitive_type "char") (identifier "local_138") (; ";")) (declaration "byte local_137;" (type_identifier "byte") (identifier "local_137") (; ";")) (declaration "byte local_136;" (type_identifier "byte") (identifier "local_136") (; ";")) (declaration "char local_135;" (primitive_type "char") (identifier "local_135") (; ";")) (declaration "uint *******local_134;" (type_identifier "uint") (pointer_declarator "*******local_134" (* "*") (pointer_declarator "******local_134" (* "*") (pointer_declarator "*****local_134" (* "*") (pointer_declarator "****local_134" (* "*") (pointer_declarator "***local_134" (* "*") (pointer_declarator "**local_134" (* "*") (pointer_declarator "*local_134" (* "*") (identifier "local_134")))))))) (; ";")) (declaration "uint *******local_130;" (type_identifier "uint") (pointer_declarator "*******local_130" (* "*") (pointer_declarator "******local_130" (* "*") (pointer_declarator "*****local_130" (* "*") (pointer_declarator "****local_130" (* "*") (pointer_declarator "***local_130" (* "*") (pointer_declarator "**local_130" (* "*") (pointer_declarator "*local_130" (* "*") (identifier "local_130")))))))) (; ";")) (declaration "uint *******local_12c;" (type_identifier "uint") (pointer_declarator "*******local_12c" (* "*") (pointer_declarator "******local_12c" (* "*") (pointer_declarator "*****local_12c" (* "*") (pointer_declarator "****local_12c" (* "*") (pointer_declarator "***local_12c" (* "*") (pointer_declarator "**local_12c" (* "*") (pointer_declarator "*local_12c" (* "*") (identifier "local_12c")))))))) (; ";")) (declaration "undefined4 local_128;" (type_identifier "undefined4") (identifier "local_128") (; ";")) (declaration "uint *******local_124;" (type_identifier "uint") (pointer_declarator "*******local_124" (* "*") (pointer_declarator "******local_124" (* "*") (pointer_declarator "*****local_124" (* "*") (pointer_declarator "****local_124" (* "*") (pointer_declarator "***local_124" (* "*") (pointer_declarator "**local_124" (* "*") (pointer_declarator "*local_124" (* "*") (identifier "local_124")))))))) (; ";")) (declaration "uint *******local_120;" (type_identifier "uint") (pointer_declarator "*******local_120" (* "*") (pointer_declarator "******local_120" (* "*") (pointer_declarator "*****local_120" (* "*") (pointer_declarator "****local_120" (* "*") (pointer_declarator "***local_120" (* "*") (pointer_declarator "**local_120" (* "*") (pointer_declarator "*local_120" (* "*") (identifier "local_120")))))))) (; ";")) (declaration "int *local_11c;" (primitive_type "int") (pointer_declarator "*local_11c" (* "*") (identifier "local_11c")) (; ";")) (declaration "undefined4 local_118;" (type_identifier "undefined4") (identifier "local_118") (; ";")) (declaration "int local_110;" (primitive_type "int") (identifier "local_110") (; ";")) (declaration "char local_10c [4];" (primitive_type "char") (array_declarator "local_10c [4]" (identifier "local_10c") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "undefined4 local_108;" (type_identifier "undefined4") (identifier "local_108") (; ";")) (declaration "uint *******local_100 [3];" (type_identifier "uint") (pointer_declarator "*******local_100 [3]" (* "*") (pointer_declarator "******local_100 [3]" (* "*") (pointer_declarator "*****local_100 [3]" (* "*") (pointer_declarator "****local_100 [3]" (* "*") (pointer_declarator "***local_100 [3]" (* "*") (pointer_declarator "**local_100 [3]" (* "*") (pointer_declarator "*local_100 [3]" (* "*") (array_declarator "local_100 [3]" (identifier "local_100") ([ "[") (number_literal "3") (] "]"))))))))) (; ";")) (declaration "undefined1 local_f1;" (type_identifier "undefined1") (identifier "local_f1") (; ";")) (declaration "uint *******local_f0;" (type_identifier "uint") (pointer_declarator "*******local_f0" (* "*") (pointer_declarator "******local_f0" (* "*") (pointer_declarator "*****local_f0" (* "*") (pointer_declarator "****local_f0" (* "*") (pointer_declarator "***local_f0" (* "*") (pointer_declarator "**local_f0" (* "*") (pointer_declarator "*local_f0" (* "*") (identifier "local_f0")))))))) (; ";")) (declaration "uint *******local_ec;" (type_identifier "uint") (pointer_declarator "*******local_ec" (* "*") (pointer_declarator "******local_ec" (* "*") (pointer_declarator "*****local_ec" (* "*") (pointer_declarator "****local_ec" (* "*") (pointer_declarator "***local_ec" (* "*") (pointer_declarator "**local_ec" (* "*") (pointer_declarator "*local_ec" (* "*") (identifier "local_ec")))))))) (; ";")) (declaration "uint *******local_e8;" (type_identifier "uint") (pointer_declarator "*******local_e8" (* "*") (pointer_declarator "******local_e8" (* "*") (pointer_declarator "*****local_e8" (* "*") (pointer_declarator "****local_e8" (* "*") (pointer_declarator "***local_e8" (* "*") (pointer_declarator "**local_e8" (* "*") (pointer_declarator "*local_e8" (* "*") (identifier "local_e8")))))))) (; ";")) (declaration "uint ******local_e4;" (type_identifier "uint") (pointer_declarator "******local_e4" (* "*") (pointer_declarator "*****local_e4" (* "*") (pointer_declarator "****local_e4" (* "*") (pointer_declarator "***local_e4" (* "*") (pointer_declarator "**local_e4" (* "*") (pointer_declarator "*local_e4" (* "*") (identifier "local_e4"))))))) (; ";")) (declaration "uint *******local_e0;" (type_identifier "uint") (pointer_declarator "*******local_e0" (* "*") (pointer_declarator "******local_e0" (* "*") (pointer_declarator "*****local_e0" (* "*") (pointer_declarator "****local_e0" (* "*") (pointer_declarator "***local_e0" (* "*") (pointer_declarator "**local_e0" (* "*") (pointer_declarator "*local_e0" (* "*") (identifier "local_e0")))))))) (; ";")) (declaration "uint *******local_dc;" (type_identifier "uint") (pointer_declarator "*******local_dc" (* "*") (pointer_declarator "******local_dc" (* "*") (pointer_declarator "*****local_dc" (* "*") (pointer_declarator "****local_dc" (* "*") (pointer_declarator "***local_dc" (* "*") (pointer_declarator "**local_dc" (* "*") (pointer_declarator "*local_dc" (* "*") (identifier "local_dc")))))))) (; ";")) (declaration "uint *******local_d8;" (type_identifier "uint") (pointer_declarator "*******local_d8" (* "*") (pointer_declarator "******local_d8" (* "*") (pointer_declarator "*****local_d8" (* "*") (pointer_declarator "****local_d8" (* "*") (pointer_declarator "***local_d8" (* "*") (pointer_declarator "**local_d8" (* "*") (pointer_declarator "*local_d8" (* "*") (identifier "local_d8")))))))) (; ";")) (declaration "int *local_d4;" (primitive_type "int") (pointer_declarator "*local_d4" (* "*") (identifier "local_d4")) (; ";")) (declaration "int *local_d0;" (primitive_type "int") (pointer_declarator "*local_d0" (* "*") (identifier "local_d0")) (; ";")) (declaration "int *local_cc;" (primitive_type "int") (pointer_declarator "*local_cc" (* "*") (identifier "local_cc")) (; ";")) (declaration "int *local_c8;" (primitive_type "int") (pointer_declarator "*local_c8" (* "*") (identifier "local_c8")) (; ";")) (declaration "int *local_c4;" (primitive_type "int") (pointer_declarator "*local_c4" (* "*") (identifier "local_c4")) (; ";")) (declaration "int *local_c0;" (primitive_type "int") (pointer_declarator "*local_c0" (* "*") (identifier "local_c0")) (; ";")) (declaration "int *local_bc;" (primitive_type "int") (pointer_declarator "*local_bc" (* "*") (identifier "local_bc")) (; ";")) (declaration "int *local_b8;" (primitive_type "int") (pointer_declarator "*local_b8" (* "*") (identifier "local_b8")) (; ";")) (declaration "int *local_b4;" (primitive_type "int") (pointer_declarator "*local_b4" (* "*") (identifier "local_b4")) (; ";")) (declaration "void *local_b0;" (primitive_type "void") (pointer_declarator "*local_b0" (* "*") (identifier "local_b0")) (; ";")) (declaration "undefined4 local_ac;" (type_identifier "undefined4") (identifier "local_ac") (; ";")) (declaration "void *local_a8;" (primitive_type "void") (pointer_declarator "*local_a8" (* "*") (identifier "local_a8")) (; ";")) (declaration "uint local_a4;" (type_identifier "uint") (identifier "local_a4") (; ";")) (declaration "byte *local_a0;" (type_identifier "byte") (pointer_declarator "*local_a0" (* "*") (identifier "local_a0")) (; ";")) (declaration "uint *******local_9c;" (type_identifier "uint") (pointer_declarator "*******local_9c" (* "*") (pointer_declarator "******local_9c" (* "*") (pointer_declarator "*****local_9c" (* "*") (pointer_declarator "****local_9c" (* "*") (pointer_declarator "***local_9c" (* "*") (pointer_declarator "**local_9c" (* "*") (pointer_declarator "*local_9c" (* "*") (identifier "local_9c")))))))) (; ";")) (declaration "uint *******local_98;" (type_identifier "uint") (pointer_declarator "*******local_98" (* "*") (pointer_declarator "******local_98" (* "*") (pointer_declarator "*****local_98" (* "*") (pointer_declarator "****local_98" (* "*") (pointer_declarator "***local_98" (* "*") (pointer_declarator "**local_98" (* "*") (pointer_declarator "*local_98" (* "*") (identifier "local_98")))))))) (; ";")) (declaration "uint ******local_94 [4];" (type_identifier "uint") (pointer_declarator "******local_94 [4]" (* "*") (pointer_declarator "*****local_94 [4]" (* "*") (pointer_declarator "****local_94 [4]" (* "*") (pointer_declarator "***local_94 [4]" (* "*") (pointer_declarator "**local_94 [4]" (* "*") (pointer_declarator "*local_94 [4]" (* "*") (array_declarator "local_94 [4]" (identifier "local_94") ([ "[") (number_literal "4") (] "]")))))))) (; ";")) (declaration "uint *******local_84;" (type_identifier "uint") (pointer_declarator "*******local_84" (* "*") (pointer_declarator "******local_84" (* "*") (pointer_declarator "*****local_84" (* "*") (pointer_declarator "****local_84" (* "*") (pointer_declarator "***local_84" (* "*") (pointer_declarator "**local_84" (* "*") (pointer_declarator "*local_84" (* "*") (identifier "local_84")))))))) (; ";")) (declaration "uint *******local_80;" (type_identifier "uint") (pointer_declarator "*******local_80" (* "*") (pointer_declarator "******local_80" (* "*") (pointer_declarator "*****local_80" (* "*") (pointer_declarator "****local_80" (* "*") (pointer_declarator "***local_80" (* "*") (pointer_declarator "**local_80" (* "*") (pointer_declarator "*local_80" (* "*") (identifier "local_80")))))))) (; ";")) (declaration "uint ******local_7c [4];" (type_identifier "uint") (pointer_declarator "******local_7c [4]" (* "*") (pointer_declarator "*****local_7c [4]" (* "*") (pointer_declarator "****local_7c [4]" (* "*") (pointer_declarator "***local_7c [4]" (* "*") (pointer_declarator "**local_7c [4]" (* "*") (pointer_declarator "*local_7c [4]" (* "*") (array_declarator "local_7c [4]" (identifier "local_7c") ([ "[") (number_literal "4") (] "]")))))))) (; ";")) (declaration "uint *******local_6c;" (type_identifier "uint") (pointer_declarator "*******local_6c" (* "*") (pointer_declarator "******local_6c" (* "*") (pointer_declarator "*****local_6c" (* "*") (pointer_declarator "****local_6c" (* "*") (pointer_declarator "***local_6c" (* "*") (pointer_declarator "**local_6c" (* "*") (pointer_declarator "*local_6c" (* "*") (identifier "local_6c")))))))) (; ";")) (declaration "undefined4 local_68;" (type_identifier "undefined4") (identifier "local_68") (; ";")) (declaration "uint *******local_64;" (type_identifier "uint") (pointer_declarator "*******local_64" (* "*") (pointer_declarator "******local_64" (* "*") (pointer_declarator "*****local_64" (* "*") (pointer_declarator "****local_64" (* "*") (pointer_declarator "***local_64" (* "*") (pointer_declarator "**local_64" (* "*") (pointer_declarator "*local_64" (* "*") (identifier "local_64")))))))) (; ";")) (declaration "uint ******local_60;" (type_identifier "uint") (pointer_declarator "******local_60" (* "*") (pointer_declarator "*****local_60" (* "*") (pointer_declarator "****local_60" (* "*") (pointer_declarator "***local_60" (* "*") (pointer_declarator "**local_60" (* "*") (pointer_declarator "*local_60" (* "*") (identifier "local_60"))))))) (; ";")) (declaration "uint *******local_5c;" (type_identifier "uint") (pointer_declarator "*******local_5c" (* "*") (pointer_declarator "******local_5c" (* "*") (pointer_declarator "*****local_5c" (* "*") (pointer_declarator "****local_5c" (* "*") (pointer_declarator "***local_5c" (* "*") (pointer_declarator "**local_5c" (* "*") (pointer_declarator "*local_5c" (* "*") (identifier "local_5c")))))))) (; ";")) (declaration "uint ******local_58;" (type_identifier "uint") (pointer_declarator "******local_58" (* "*") (pointer_declarator "*****local_58" (* "*") (pointer_declarator "****local_58" (* "*") (pointer_declarator "***local_58" (* "*") (pointer_declarator "**local_58" (* "*") (pointer_declarator "*local_58" (* "*") (identifier "local_58"))))))) (; ";")) (declaration "uint ******local_54;" (type_identifier "uint") (pointer_declarator "******local_54" (* "*") (pointer_declarator "*****local_54" (* "*") (pointer_declarator "****local_54" (* "*") (pointer_declarator "***local_54" (* "*") (pointer_declarator "**local_54" (* "*") (pointer_declarator "*local_54" (* "*") (identifier "local_54"))))))) (; ";")) (declaration "uint ******local_50;" (type_identifier "uint") (pointer_declarator "******local_50" (* "*") (pointer_declarator "*****local_50" (* "*") (pointer_declarator "****local_50" (* "*") (pointer_declarator "***local_50" (* "*") (pointer_declarator "**local_50" (* "*") (pointer_declarator "*local_50" (* "*") (identifier "local_50"))))))) (; ";")) (declaration "uint ******local_4c;" (type_identifier "uint") (pointer_declarator "******local_4c" (* "*") (pointer_declarator "*****local_4c" (* "*") (pointer_declarator "****local_4c" (* "*") (pointer_declarator "***local_4c" (* "*") (pointer_declarator "**local_4c" (* "*") (pointer_declarator "*local_4c" (* "*") (identifier "local_4c"))))))) (; ";")) (declaration "uint ******local_48;" (type_identifier "uint") (pointer_declarator "******local_48" (* "*") (pointer_declarator "*****local_48" (* "*") (pointer_declarator "****local_48" (* "*") (pointer_declarator "***local_48" (* "*") (pointer_declarator "**local_48" (* "*") (pointer_declarator "*local_48" (* "*") (identifier "local_48"))))))) (; ";")) (declaration "uint ******local_44;" (type_identifier "uint") (pointer_declarator "******local_44" (* "*") (pointer_declarator "*****local_44" (* "*") (pointer_declarator "****local_44" (* "*") (pointer_declarator "***local_44" (* "*") (pointer_declarator "**local_44" (* "*") (pointer_declarator "*local_44" (* "*") (identifier "local_44"))))))) (; ";")) (declaration "uint ******local_40;" (type_identifier "uint") (pointer_declarator "******local_40" (* "*") (pointer_declarator "*****local_40" (* "*") (pointer_declarator "****local_40" (* "*") (pointer_declarator "***local_40" (* "*") (pointer_declarator "**local_40" (* "*") (pointer_declarator "*local_40" (* "*") (identifier "local_40"))))))) (; ";")) (declaration "uint ******local_3c;" (type_identifier "uint") (pointer_declarator "******local_3c" (* "*") (pointer_declarator "*****local_3c" (* "*") (pointer_declarator "****local_3c" (* "*") (pointer_declarator "***local_3c" (* "*") (pointer_declarator "**local_3c" (* "*") (pointer_declarator "*local_3c" (* "*") (identifier "local_3c"))))))) (; ";")) (declaration "uint ******local_38;" (type_identifier "uint") (pointer_declarator "******local_38" (* "*") (pointer_declarator "*****local_38" (* "*") (pointer_declarator "****local_38" (* "*") (pointer_declarator "***local_38" (* "*") (pointer_declarator "**local_38" (* "*") (pointer_declarator "*local_38" (* "*") (identifier "local_38"))))))) (; ";")) (declaration "uint ******local_34;" (type_identifier "uint") (pointer_declarator "******local_34" (* "*") (pointer_declarator "*****local_34" (* "*") (pointer_declarator "****local_34" (* "*") (pointer_declarator "***local_34" (* "*") (pointer_declarator "**local_34" (* "*") (pointer_declarator "*local_34" (* "*") (identifier "local_34"))))))) (; ";")) (declaration "uint ******local_30;" (type_identifier "uint") (pointer_declarator "******local_30" (* "*") (pointer_declarator "*****local_30" (* "*") (pointer_declarator "****local_30" (* "*") (pointer_declarator "***local_30" (* "*") (pointer_declarator "**local_30" (* "*") (pointer_declarator "*local_30" (* "*") (identifier "local_30"))))))) (; ";")) (declaration "uint ******local_2c;" (type_identifier "uint") (pointer_declarator "******local_2c" (* "*") (pointer_declarator "*****local_2c" (* "*") (pointer_declarator "****local_2c" (* "*") (pointer_declarator "***local_2c" (* "*") (pointer_declarator "**local_2c" (* "*") (pointer_declarator "*local_2c" (* "*") (identifier "local_2c"))))))) (; ";")) (declaration "uint ******local_28;" (type_identifier "uint") (pointer_declarator "******local_28" (* "*") (pointer_declarator "*****local_28" (* "*") (pointer_declarator "****local_28" (* "*") (pointer_declarator "***local_28" (* "*") (pointer_declarator "**local_28" (* "*") (pointer_declarator "*local_28" (* "*") (identifier "local_28"))))))) (; ";")) (declaration "uint ******local_24;" (type_identifier "uint") (pointer_declarator "******local_24" (* "*") (pointer_declarator "*****local_24" (* "*") (pointer_declarator "****local_24" (* "*") (pointer_declarator "***local_24" (* "*") (pointer_declarator "**local_24" (* "*") (pointer_declarator "*local_24" (* "*") (identifier "local_24"))))))) (; ";")) (declaration "undefined1 *puVar25;" (type_identifier "undefined1") (pointer_declarator "*puVar25" (* "*") (identifier "puVar25")) (; ";")) (expression_statement "bVar36 = 0;" (assignment_expression "bVar36 = 0" (identifier "bVar36") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" (identifier "local_120") (= "=") (cast_expression "(uint *******)&__DT_PLTGOT" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT")))) (; ";")) (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" (identifier "local_13c") (= "=") (cast_expression "(uint *******)&DAT_00302378" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00302378" (& "&") (identifier "DAT_00302378")))) (; ";")) (if_statement "if (*(int *)(DAT_00302378 + 0xc) == 0) {\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    \n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }" (if "if") (parenthesized_expression "(*(int *)(DAT_00302378 + 0xc) == 0)" (( "(") (binary_expression "*(int *)(DAT_00302378 + 0xc) == 0" (pointer_expression "*(int *)(DAT_00302378 + 0xc)" (* "*") (cast_expression "(int *)(DAT_00302378 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_00302378 + 0xc)" (( "(") (binary_expression "DAT_00302378 + 0xc" (identifier "DAT_00302378") (+ "+") (number_literal "0xc")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n                    \n    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);\n  }" ({ "{") (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" (identifier "local_13c") (= "=") (cast_expression "(uint *******)&DAT_00302378" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00302378" (& "&") (identifier "DAT_00302378")))) (; ";")) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" (identifier "local_120") (= "=") (cast_expression "(uint *******)&__DT_PLTGOT" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT")))) (; ";")) (expression_statement "FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);" (call_expression "FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378)" (identifier "FUN_0005f0b0") (argument_list "("../../gold/parameters.h",0x69,"target",DAT_00302378)" (( "(") (string_literal ""../../gold/parameters.h"" (" """) (string_content "../../gold/parameters.h") (" """)) (, ",") (number_literal "0x69") (, ",") (string_literal ""target"" (" """) (string_content "target") (" """)) (, ",") (identifier "DAT_00302378") () ")"))) (; ";")) (} "}"))) (expression_statement "pppppuVar15 = *(uint ******)(DAT_00302378 + 8);" (assignment_expression "pppppuVar15 = *(uint ******)(DAT_00302378 + 8)" (identifier "pppppuVar15") (= "=") (pointer_expression "*(uint ******)(DAT_00302378 + 8)" (* "*") (cast_expression "(uint ******)(DAT_00302378 + 8)" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(DAT_00302378 + 8)" (( "(") (binary_expression "DAT_00302378 + 8" (identifier "DAT_00302378") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);" (assignment_expression "local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" (identifier "local_198") (= "=") (pointer_expression "*(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" (* "*") (cast_expression "(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60)" (( "(") (binary_expression "*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60" (pointer_expression "*(int *)(*(int *)(DAT_00302378 + 0xc) + 4)" (* "*") (cast_expression "(int *)(*(int *)(DAT_00302378 + 0xc) + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(DAT_00302378 + 0xc) + 4)" (( "(") (binary_expression "*(int *)(DAT_00302378 + 0xc) + 4" (pointer_expression "*(int *)(DAT_00302378 + 0xc)" (* "*") (cast_expression "(int *)(DAT_00302378 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_00302378 + 0xc)" (( "(") (binary_expression "DAT_00302378 + 0xc" (identifier "DAT_00302378") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "4")) () ")")))) (+ "+") (number_literal "0x60")) () ")"))))) (; ";")) (expression_statement "local_130 = (uint *******)param_1[10];" (assignment_expression "local_130 = (uint *******)param_1[10]" (identifier "local_130") (= "=") (cast_expression "(uint *******)param_1[10]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]")))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)&DAT_00302378;" (assignment_expression "pppppppuVar22 = (uint *******)&DAT_00302378" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)&DAT_00302378" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00302378" (& "&") (identifier "DAT_00302378")))) (; ";")) (expression_statement "pppppppuVar29 = (uint *******)&__DT_PLTGOT;" (assignment_expression "pppppppuVar29 = (uint *******)&__DT_PLTGOT" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)&__DT_PLTGOT" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT")))) (; ";")) (if_statement "if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;" (if "if") (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar15 == (uint *****)0x0" (identifier "pppppuVar15") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000a34ee;" (goto "goto") (statement_identifier "LAB_000a34ee") (; ";"))) (if_statement "if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }\n  else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }" (if "if") (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x18b1) == '\0')" (( "(") (binary_expression "*(char *)((int)pppppuVar15 + 0x18b1) == '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x18b1)" (* "*") (cast_expression "(char *)((int)pppppuVar15 + 0x18b1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppuVar15 + 0x18b1)" (( "(") (binary_expression "(int)pppppuVar15 + 0x18b1" (cast_expression "(int)pppppuVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppuVar15")) (+ "+") (number_literal "0x18b1")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }\nLAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);\n    local_190 = pppppppuVar22;\n    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);\n    local_160 = *pppppppuVar22;\n    param_1[0x15] = (uint ******)pppppppuVar22;\n    local_148 = pppppppuVar22[2];\n    local_164 = pppppppuVar22[3];\n    local_17c = (uint *******)pppppppuVar22[4];\n    local_180 = pppppppuVar22[6];\n    pppppuVar15 = (*local_13c)[2];\n    local_188 = pppppppuVar22[7];\n    local_144 = pppppppuVar22[1];\n    pppppppuVar22 = local_13c;\n    pppppppuVar29 = local_120;\n    if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }\n    local_138 = '\x01';\n    local_135 = '\0';\n    local_136 = '\x01';\n  }" ({ "{") (if_statement "if (pppppuVar15[0x164d] == (uint ****)0x0) {\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }\n    else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }" (if "if") (parenthesized_expression "(pppppuVar15[0x164d] == (uint ****)0x0)" (( "(") (binary_expression "pppppuVar15[0x164d] == (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" (identifier "pppppuVar15") ([ "[") (number_literal "0x164d") (] "]")) (== "==") (cast_expression "(uint ****)0x0" (( "(") (type_descriptor "uint ****" (type_identifier "uint") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      local_136 = *(byte *)(param_3 + 0x1ce);\n      pppppppuVar22 = (uint *******)(uint)local_136;\n      if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }\n      local_190 = (uint *******)param_1[0x15];\n      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;\n      local_190 = (uint *******)0x0;\n    }" ({ "{") (expression_statement "local_136 = *(byte *)(param_3 + 0x1ce);" (assignment_expression "local_136 = *(byte *)(param_3 + 0x1ce)" (identifier "local_136") (= "=") (pointer_expression "*(byte *)(param_3 + 0x1ce)" (* "*") (cast_expression "(byte *)(param_3 + 0x1ce)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_3 + 0x1ce)" (( "(") (binary_expression "param_3 + 0x1ce" (identifier "param_3") (+ "+") (number_literal "0x1ce")) () ")"))))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)(uint)local_136;" (assignment_expression "pppppppuVar22 = (uint *******)(uint)local_136" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)(uint)local_136" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (cast_expression "(uint)local_136" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_136")))) (; ";")) (if_statement "if (local_136 == 0) {\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }" (if "if") (parenthesized_expression "(local_136 == 0)" (( "(") (binary_expression "local_136 == 0" (identifier "local_136") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        if (local_130 == (uint *******)0x0) {\n          return;\n        }\n        local_148 = (uint ******)param_4[2];\n        local_160 = *(uint *******)(*param_4 + 8);\n        local_164 = (uint ******)param_4[3];\n        if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }\n        local_17c = (uint *******)param_4[4];\n        local_180 = (uint ******)param_4[6];\n        if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }\n        local_138 = '\0';\n        local_135 = '\0';\n        local_190 = (uint *******)0x0;\n        local_188 = (uint ******)param_4[7];\n        local_144 = *(uint *******)(param_4[1] + 8);\n        local_136 = '\0';\n        goto LAB_000a1e71;\n      }" ({ "{") (if_statement "if (local_130 == (uint *******)0x0) {\n          return;\n        }" (if "if") (parenthesized_expression "(local_130 == (uint *******)0x0)" (( "(") (binary_expression "local_130 == (uint *******)0x0" (identifier "local_130") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          return;\n        }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "local_148 = (uint ******)param_4[2];" (assignment_expression "local_148 = (uint ******)param_4[2]" (identifier "local_148") (= "=") (cast_expression "(uint ******)param_4[2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "param_4[2]" (identifier "param_4") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "local_160 = *(uint *******)(*param_4 + 8);" (assignment_expression "local_160 = *(uint *******)(*param_4 + 8)" (identifier "local_160") (= "=") (pointer_expression "*(uint *******)(*param_4 + 8)" (* "*") (cast_expression "(uint *******)(*param_4 + 8)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*param_4 + 8)" (( "(") (binary_expression "*param_4 + 8" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "local_164 = (uint ******)param_4[3];" (assignment_expression "local_164 = (uint ******)param_4[3]" (identifier "local_164") (= "=") (cast_expression "(uint ******)param_4[3]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "param_4[3]" (identifier "param_4") ([ "[") (number_literal "3") (] "]")))) (; ";")) (if_statement "if (local_164 != (uint ******)0x0) {\n          local_164 = (uint ******)local_164[2];\n        }" (if "if") (parenthesized_expression "(local_164 != (uint ******)0x0)" (( "(") (binary_expression "local_164 != (uint ******)0x0" (identifier "local_164") (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          local_164 = (uint ******)local_164[2];\n        }" ({ "{") (expression_statement "local_164 = (uint ******)local_164[2];" (assignment_expression "local_164 = (uint ******)local_164[2]" (identifier "local_164") (= "=") (cast_expression "(uint ******)local_164[2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "local_164[2]" (identifier "local_164") ([ "[") (number_literal "2") (] "]")))) (; ";")) (} "}"))) (expression_statement "local_17c = (uint *******)param_4[4];" (assignment_expression "local_17c = (uint *******)param_4[4]" (identifier "local_17c") (= "=") (cast_expression "(uint *******)param_4[4]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_4[4]" (identifier "param_4") ([ "[") (number_literal "4") (] "]")))) (; ";")) (expression_statement "local_180 = (uint ******)param_4[6];" (assignment_expression "local_180 = (uint ******)param_4[6]" (identifier "local_180") (= "=") (cast_expression "(uint ******)param_4[6]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "param_4[6]" (identifier "param_4") ([ "[") (number_literal "6") (] "]")))) (; ";")) (if_statement "if (local_180 != (uint ******)0x0) {\n          local_180 = (uint ******)local_180[2];\n        }" (if "if") (parenthesized_expression "(local_180 != (uint ******)0x0)" (( "(") (binary_expression "local_180 != (uint ******)0x0" (identifier "local_180") (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          local_180 = (uint ******)local_180[2];\n        }" ({ "{") (expression_statement "local_180 = (uint ******)local_180[2];" (assignment_expression "local_180 = (uint ******)local_180[2]" (identifier "local_180") (= "=") (cast_expression "(uint ******)local_180[2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "local_180[2]" (identifier "local_180") ([ "[") (number_literal "2") (] "]")))) (; ";")) (} "}"))) (expression_statement "local_138 = '\0';" (assignment_expression "local_138 = '\0'" (identifier "local_138") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "local_135 = '\0';" (assignment_expression "local_135 = '\0'" (identifier "local_135") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "local_190 = (uint *******)0x0;" (assignment_expression "local_190 = (uint *******)0x0" (identifier "local_190") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_188 = (uint ******)param_4[7];" (assignment_expression "local_188 = (uint ******)param_4[7]" (identifier "local_188") (= "=") (cast_expression "(uint ******)param_4[7]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "param_4[7]" (identifier "param_4") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "local_144 = *(uint *******)(param_4[1] + 8);" (assignment_expression "local_144 = *(uint *******)(param_4[1] + 8)" (identifier "local_144") (= "=") (pointer_expression "*(uint *******)(param_4[1] + 8)" (* "*") (cast_expression "(uint *******)(param_4[1] + 8)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(param_4[1] + 8)" (( "(") (binary_expression "param_4[1] + 8" (subscript_expression "param_4[1]" (identifier "param_4") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "local_136 = '\0';" (assignment_expression "local_136 = '\0'" (identifier "local_136") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (goto_statement "goto LAB_000a1e71;" (goto "goto") (statement_identifier "LAB_000a1e71") (; ";")) (} "}"))) (expression_statement "local_190 = (uint *******)param_1[0x15];" (assignment_expression "local_190 = (uint *******)param_1[0x15]" (identifier "local_190") (= "=") (cast_expression "(uint *******)param_1[0x15]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[0x15]" (identifier "param_1") ([ "[") (number_literal "0x15") (] "]")))) (; ";")) (if_statement "if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;" (if "if") (parenthesized_expression "(local_190 != (uint *******)0x0)" (( "(") (binary_expression "local_190 != (uint *******)0x0" (identifier "local_190") (!= "!=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000a1e0a;" (goto "goto") (statement_identifier "LAB_000a1e0a") (; ";"))) (expression_statement "local_190 = (uint *******)0x0;" (assignment_expression "local_190 = (uint *******)0x0" (identifier "local_190") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }" (else "else") (compound_statement "{\n      pppppppuVar22 = (uint *******)param_1[0x15];\n      local_190 = pppppppuVar22;\n      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;\n    }" ({ "{") (expression_statement "pppppppuVar22 = (uint *******)param_1[0x15];" (assignment_expression "pppppppuVar22 = (uint *******)param_1[0x15]" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)param_1[0x15]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[0x15]" (identifier "param_1") ([ "[") (number_literal "0x15") (] "]")))) (; ";")) (expression_statement "local_190 = pppppppuVar22;" (assignment_expression "local_190 = pppppppuVar22" (identifier "local_190") (= "=") (identifier "pppppppuVar22")) (; ";")) (if_statement "if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;" (if "if") (parenthesized_expression "(pppppppuVar22 != (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar22 != (uint *******)0x0" (identifier "pppppppuVar22") (!= "!=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000a33a4;" (goto "goto") (statement_identifier "LAB_000a33a4") (; ";"))) (} "}")))) (labeled_statement "LAB_000a3448:\n    if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }" (statement_identifier "LAB_000a3448") (: ":") (if_statement "if (param_4 == (int *)0x0) {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }" (if "if") (parenthesized_expression "(param_4 == (int *)0x0)" (( "(") (binary_expression "param_4 == (int *)0x0" (identifier "param_4") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);\n    }" ({ "{") (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" (identifier "local_13c") (= "=") (cast_expression "(uint *******)&DAT_00302378" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00302378" (& "&") (identifier "DAT_00302378")))) (; ";")) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" (identifier "local_120") (= "=") (cast_expression "(uint *******)&__DT_PLTGOT" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT")))) (; ";")) (expression_statement "FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);" (call_expression "FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22)" (identifier "FUN_0005f0b0") (argument_list "("../../gold/object.cc",0x597,"do_layout",pppppppuVar22)" (( "(") (string_literal ""../../gold/object.cc"" (" """) (string_content "../../gold/object.cc") (" """)) (, ",") (number_literal "0x597") (, ",") (string_literal ""do_layout"" (" """) (string_content "do_layout") (" """)) (, ",") (identifier "pppppppuVar22") () ")"))) (; ";")) (} "}")))) (if_statement "if (local_130 == (uint *******)0x0) {\n      return;\n    }" (if "if") (parenthesized_expression "(local_130 == (uint *******)0x0)" (( "(") (binary_expression "local_130 == (uint *******)0x0" (identifier "local_130") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" (identifier "local_13c") (= "=") (cast_expression "(uint *******)&DAT_00302378" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00302378" (& "&") (identifier "DAT_00302378")))) (; ";")) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" (identifier "local_120") (= "=") (cast_expression "(uint *******)&__DT_PLTGOT" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT")))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);" (assignment_expression "pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)FUN_0017ebf0(0x20)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_0017ebf0(0x20)" (identifier "FUN_0017ebf0") (argument_list "(0x20)" (( "(") (number_literal "0x20") () ")"))))) (; ";")) (expression_statement "local_190 = pppppppuVar22;" (assignment_expression "local_190 = pppppppuVar22" (identifier "local_190") (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);" (call_expression "FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6)" (identifier "FUN_00091c10") (argument_list "(param_1,pppppppuVar22,param_4,(int)local_130 << 6)" (( "(") (identifier "param_1") (, ",") (identifier "pppppppuVar22") (, ",") (identifier "param_4") (, ",") (binary_expression "(int)local_130 << 6" (cast_expression "(int)local_130" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_130")) (<< "<<") (number_literal "6")) () ")"))) (; ";")) (expression_statement "local_160 = *pppppppuVar22;" (assignment_expression "local_160 = *pppppppuVar22" (identifier "local_160") (= "=") (pointer_expression "*pppppppuVar22" (* "*") (identifier "pppppppuVar22"))) (; ";")) (expression_statement "param_1[0x15] = (uint ******)pppppppuVar22;" (assignment_expression "param_1[0x15] = (uint ******)pppppppuVar22" (subscript_expression "param_1[0x15]" (identifier "param_1") ([ "[") (number_literal "0x15") (] "]")) (= "=") (cast_expression "(uint ******)pppppppuVar22" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppuVar22"))) (; ";")) (expression_statement "local_148 = pppppppuVar22[2];" (assignment_expression "local_148 = pppppppuVar22[2]" (identifier "local_148") (= "=") (subscript_expression "pppppppuVar22[2]" (identifier "pppppppuVar22") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "local_164 = pppppppuVar22[3];" (assignment_expression "local_164 = pppppppuVar22[3]" (identifier "local_164") (= "=") (subscript_expression "pppppppuVar22[3]" (identifier "pppppppuVar22") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "local_17c = (uint *******)pppppppuVar22[4];" (assignment_expression "local_17c = (uint *******)pppppppuVar22[4]" (identifier "local_17c") (= "=") (cast_expression "(uint *******)pppppppuVar22[4]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppuVar22[4]" (identifier "pppppppuVar22") ([ "[") (number_literal "4") (] "]")))) (; ";")) (expression_statement "local_180 = pppppppuVar22[6];" (assignment_expression "local_180 = pppppppuVar22[6]" (identifier "local_180") (= "=") (subscript_expression "pppppppuVar22[6]" (identifier "pppppppuVar22") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" (identifier "pppppuVar15") (= "=") (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "local_188 = pppppppuVar22[7];" (assignment_expression "local_188 = pppppppuVar22[7]" (identifier "local_188") (= "=") (subscript_expression "pppppppuVar22[7]" (identifier "pppppppuVar22") ([ "[") (number_literal "7") (] "]"))) (; ";")) (expression_statement "local_144 = pppppppuVar22[1];" (assignment_expression "local_144 = pppppppuVar22[1]" (identifier "local_144") (= "=") (subscript_expression "pppppppuVar22[1]" (identifier "pppppppuVar22") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "pppppppuVar22 = local_13c;" (assignment_expression "pppppppuVar22 = local_13c" (identifier "pppppppuVar22") (= "=") (identifier "local_13c")) (; ";")) (expression_statement "pppppppuVar29 = local_120;" (assignment_expression "pppppppuVar29 = local_120" (identifier "pppppppuVar29") (= "=") (identifier "local_120")) (; ";")) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }" (if "if") (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar15 == (uint *****)0x0" (identifier "pppppuVar15") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000a34ee:\n      local_120 = pppppppuVar29;\n      local_13c = pppppppuVar22;\n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);\n    }" ({ "{") (labeled_statement "LAB_000a34ee:\n      local_120 = pppppppuVar29;" (statement_identifier "LAB_000a34ee") (: ":") (expression_statement "local_120 = pppppppuVar29;" (assignment_expression "local_120 = pppppppuVar29" (identifier "local_120") (= "=") (identifier "pppppppuVar29")) (; ";"))) (expression_statement "local_13c = pppppppuVar22;" (assignment_expression "local_13c = pppppppuVar22" (identifier "local_13c") (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);" (call_expression "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15)" (identifier "FUN_0005f0b0") (argument_list "(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15)" (( "(") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4")) (, ",") (number_literal "0x5c") (, ",") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1")) (, ",") (identifier "pppppuVar15") () ")"))) (; ";")) (} "}"))) (expression_statement "local_138 = '\x01';" (assignment_expression "local_138 = '\x01'" (identifier "local_138") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "local_135 = '\0';" (assignment_expression "local_135 = '\0'" (identifier "local_135") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "local_136 = '\x01';" (assignment_expression "local_136 = '\x01'" (identifier "local_136") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (} "}")) (else_clause "else {\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }" (else "else") (compound_statement "{\n    local_190 = (uint *******)param_1[0x15];\n    pppppppuVar22 = param_1;\n    if (local_190 == (uint *******)0x0) goto LAB_000a3448;\n    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }\n    if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }\nLAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }\n    local_138 = '\x01';\n    local_135 = '\x01';\n    local_160 = *local_190;\n    local_148 = local_190[2];\n    local_136 = '\0';\n    local_164 = local_190[3];\n    local_17c = (uint *******)local_190[4];\n    local_180 = local_190[6];\n    local_188 = local_190[7];\n    local_144 = local_190[1];\n    local_13c = (uint *******)&DAT_00302378;\n    local_120 = (uint *******)&__DT_PLTGOT;\n  }" ({ "{") (expression_statement "local_190 = (uint *******)param_1[0x15];" (assignment_expression "local_190 = (uint *******)param_1[0x15]" (identifier "local_190") (= "=") (cast_expression "(uint *******)param_1[0x15]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[0x15]" (identifier "param_1") ([ "[") (number_literal "0x15") (] "]")))) (; ";")) (expression_statement "pppppppuVar22 = param_1;" (assignment_expression "pppppppuVar22 = param_1" (identifier "pppppppuVar22") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (local_190 == (uint *******)0x0) goto LAB_000a3448;" (if "if") (parenthesized_expression "(local_190 == (uint *******)0x0)" (( "(") (binary_expression "local_190 == (uint *******)0x0" (identifier "local_190") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000a3448;" (goto "goto") (statement_identifier "LAB_000a3448") (; ";"))) (if_statement "if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }" (if "if") (parenthesized_expression "(*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0')" (( "(") (binary_expression "*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0'" (pointer_expression "*(char *)(*(int *)(param_2 + 0x158) + 0xc)" (* "*") (cast_expression "(char *)(*(int *)(param_2 + 0x158) + 0xc)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_2 + 0x158) + 0xc)" (( "(") (binary_expression "*(int *)(param_2 + 0x158) + 0xc" (pointer_expression "*(int *)(param_2 + 0x158)" (* "*") (cast_expression "(int *)(param_2 + 0x158)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x158)" (( "(") (binary_expression "param_2 + 0x158" (identifier "param_2") (+ "+") (number_literal "0x158")) () ")")))) (+ "+") (number_literal "0xc")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      local_13c = (uint *******)&DAT_00302378;\n      local_120 = (uint *******)&__DT_PLTGOT;\n                    \n      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);\n    }" ({ "{") (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" (identifier "local_13c") (= "=") (cast_expression "(uint *******)&DAT_00302378" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00302378" (& "&") (identifier "DAT_00302378")))) (; ";")) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" (identifier "local_120") (= "=") (cast_expression "(uint *******)&__DT_PLTGOT" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT")))) (; ";")) (expression_statement "FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);" (call_expression "FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190)" (identifier "FUN_0005f0b0") (argument_list "("../../gold/object.cc",0x59d,"do_layout",local_190)" (( "(") (string_literal ""../../gold/object.cc"" (" """) (string_content "../../gold/object.cc") (" """)) (, ",") (number_literal "0x59d") (, ",") (string_literal ""do_layout"" (" """) (string_content "do_layout") (" """)) (, ",") (identifier "local_190") () ")"))) (; ";")) (} "}"))) (if_statement "if (pppppuVar15[0x164d] != (uint ****)0x0) {\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }" (if "if") (parenthesized_expression "(pppppuVar15[0x164d] != (uint ****)0x0)" (( "(") (binary_expression "pppppuVar15[0x164d] != (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" (identifier "pppppuVar15") ([ "[") (number_literal "0x164d") (] "]")) (!= "!=") (cast_expression "(uint ****)0x0" (( "(") (type_descriptor "uint ****" (type_identifier "uint") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }\n    }" ({ "{") (labeled_statement "LAB_000a33a4:\n      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }" (statement_identifier "LAB_000a33a4") (: ":") (if_statement "if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }" (if "if") (parenthesized_expression "(*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0')" (( "(") (binary_expression "*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0'" (pointer_expression "*(char *)(*(int *)(param_2 + 0x15c) + 0x50)" (* "*") (cast_expression "(char *)(*(int *)(param_2 + 0x15c) + 0x50)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_2 + 0x15c) + 0x50)" (( "(") (binary_expression "*(int *)(param_2 + 0x15c) + 0x50" (pointer_expression "*(int *)(param_2 + 0x15c)" (* "*") (cast_expression "(int *)(param_2 + 0x15c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x15c)" (( "(") (binary_expression "param_2 + 0x15c" (identifier "param_2") (+ "+") (number_literal "0x15c")) () ")")))) (+ "+") (number_literal "0x50")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        local_13c = (uint *******)&DAT_00302378;\n        local_120 = (uint *******)&__DT_PLTGOT;\n                    \n        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);\n      }" ({ "{") (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" (identifier "local_13c") (= "=") (cast_expression "(uint *******)&DAT_00302378" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00302378" (& "&") (identifier "DAT_00302378")))) (; ";")) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" (identifier "local_120") (= "=") (cast_expression "(uint *******)&__DT_PLTGOT" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT")))) (; ";")) (expression_statement "FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);" (call_expression "FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15)" (identifier "FUN_0005f0b0") (argument_list "("../../gold/object.cc",0x59f,"do_layout",pppppuVar15)" (( "(") (string_literal ""../../gold/object.cc"" (" """) (string_content "../../gold/object.cc") (" """)) (, ",") (number_literal "0x59f") (, ",") (string_literal ""do_layout"" (" """) (string_content "do_layout") (" """)) (, ",") (identifier "pppppuVar15") () ")"))) (; ";")) (} "}")))) (} "}"))) (labeled_statement "LAB_000a1e0a:\n    if (local_130 == (uint *******)0x0) {\n      return;\n    }" (statement_identifier "LAB_000a1e0a") (: ":") (if_statement "if (local_130 == (uint *******)0x0) {\n      return;\n    }" (if "if") (parenthesized_expression "(local_130 == (uint *******)0x0)" (( "(") (binary_expression "local_130 == (uint *******)0x0" (identifier "local_130") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}")))) (expression_statement "local_138 = '\x01';" (assignment_expression "local_138 = '\x01'" (identifier "local_138") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "local_135 = '\x01';" (assignment_expression "local_135 = '\x01'" (identifier "local_135") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "local_160 = *local_190;" (assignment_expression "local_160 = *local_190" (identifier "local_160") (= "=") (pointer_expression "*local_190" (* "*") (identifier "local_190"))) (; ";")) (expression_statement "local_148 = local_190[2];" (assignment_expression "local_148 = local_190[2]" (identifier "local_148") (= "=") (subscript_expression "local_190[2]" (identifier "local_190") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "local_136 = '\0';" (assignment_expression "local_136 = '\0'" (identifier "local_136") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "local_164 = local_190[3];" (assignment_expression "local_164 = local_190[3]" (identifier "local_164") (= "=") (subscript_expression "local_190[3]" (identifier "local_190") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "local_17c = (uint *******)local_190[4];" (assignment_expression "local_17c = (uint *******)local_190[4]" (identifier "local_17c") (= "=") (cast_expression "(uint *******)local_190[4]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_190[4]" (identifier "local_190") ([ "[") (number_literal "4") (] "]")))) (; ";")) (expression_statement "local_180 = local_190[6];" (assignment_expression "local_180 = local_190[6]" (identifier "local_180") (= "=") (subscript_expression "local_190[6]" (identifier "local_190") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "local_188 = local_190[7];" (assignment_expression "local_188 = local_190[7]" (identifier "local_188") (= "=") (subscript_expression "local_190[7]" (identifier "local_190") ([ "[") (number_literal "7") (] "]"))) (; ";")) (expression_statement "local_144 = local_190[1];" (assignment_expression "local_144 = local_190[1]" (identifier "local_144") (= "=") (subscript_expression "local_190[1]" (identifier "local_190") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "local_13c = (uint *******)&DAT_00302378;" (assignment_expression "local_13c = (uint *******)&DAT_00302378" (identifier "local_13c") (= "=") (cast_expression "(uint *******)&DAT_00302378" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00302378" (& "&") (identifier "DAT_00302378")))) (; ";")) (expression_statement "local_120 = (uint *******)&__DT_PLTGOT;" (assignment_expression "local_120 = (uint *******)&__DT_PLTGOT" (identifier "local_120") (= "=") (cast_expression "(uint *******)&__DT_PLTGOT" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT")))) (; ";")) (} "}")))) (labeled_statement "LAB_000a1e71:\n  pppppppuVar29 = local_124;" (statement_identifier "LAB_000a1e71") (: ":") (expression_statement "pppppppuVar29 = local_124;" (assignment_expression "pppppppuVar29 = local_124" (identifier "pppppppuVar29") (= "=") (identifier "local_124")) (; ";"))) (expression_statement "pppppppuVar22 = local_130;" (assignment_expression "pppppppuVar22 = local_130" (identifier "pppppppuVar22") (= "=") (identifier "local_130")) (; ";")) (expression_statement "ppppuVar14 = pppppuVar15[0x164f];" (assignment_expression "ppppuVar14 = pppppuVar15[0x164f]" (identifier "ppppuVar14") (= "=") (subscript_expression "pppppuVar15[0x164f]" (identifier "pppppuVar15") ([ "[") (number_literal "0x164f") (] "]"))) (; ";")) (expression_statement "local_124 = (uint *******)((uint)local_124 & 0xffffff00);" (assignment_expression "local_124 = (uint *******)((uint)local_124 & 0xffffff00)" (identifier "local_124") (= "=") (cast_expression "(uint *******)((uint)local_124 & 0xffffff00)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((uint)local_124 & 0xffffff00)" (( "(") (binary_expression "(uint)local_124 & 0xffffff00" (cast_expression "(uint)local_124" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_124")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (if_statement "if (ppppuVar14 != (uint ****)0x0) {\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }" (if "if") (parenthesized_expression "(ppppuVar14 != (uint ****)0x0)" (( "(") (binary_expression "ppppuVar14 != (uint ****)0x0" (identifier "ppppuVar14") (!= "!=") (cast_expression "(uint ****)0x0" (( "(") (type_descriptor "uint ****" (type_identifier "uint") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    local_124._1_3_ = SUB43(pppppppuVar29,1);\n    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));\n    if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }\n  }" ({ "{") (expression_statement "local_124._1_3_ = SUB43(pppppppuVar29,1);" (assignment_expression "local_124._1_3_ = SUB43(pppppppuVar29,1)" (field_expression "local_124._1_3_" (identifier "local_124") (. ".") (field_identifier "_1_3_")) (= "=") (call_expression "SUB43(pppppppuVar29,1)" (identifier "SUB43") (argument_list "(pppppppuVar29,1)" (( "(") (identifier "pppppppuVar29") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));" (assignment_expression "local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" (identifier "local_124") (= "=") (cast_expression "(uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" (identifier "CONCAT31") (argument_list "(local_124._1_3_,*(char *)(ppppuVar14 + 0x18))" (( "(") (field_expression "local_124._1_3_" (identifier "local_124") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(char *)(ppppuVar14 + 0x18)" (* "*") (cast_expression "(char *)(ppppuVar14 + 0x18)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppppuVar14 + 0x18)" (( "(") (binary_expression "ppppuVar14 + 0x18" (identifier "ppppuVar14") (+ "+") (number_literal "0x18")) () ")")))) () ")"))))) (; ";")) (if_statement "if (*(char *)(ppppuVar14 + 0x18) != '\0') {\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }" (if "if") (parenthesized_expression "(*(char *)(ppppuVar14 + 0x18) != '\0')" (( "(") (binary_expression "*(char *)(ppppuVar14 + 0x18) != '\0'" (pointer_expression "*(char *)(ppppuVar14 + 0x18)" (* "*") (cast_expression "(char *)(ppppuVar14 + 0x18)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppppuVar14 + 0x18)" (( "(") (binary_expression "ppppuVar14 + 0x18" (identifier "ppppuVar14") (+ "+") (number_literal "0x18")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);\n    }" ({ "{") (expression_statement "local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);" (assignment_expression "local_124 = (uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1)" (identifier "local_124") (= "=") (cast_expression "(uint *******)\n                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1)" (( "(") (binary_expression "CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1" (call_expression "CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61))" (identifier "CONCAT31") (argument_list "(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61))" (( "(") (field_expression "local_124._1_3_" (identifier "local_124") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(undefined1 *)((int)ppppuVar14 + 0x61)" (* "*") (cast_expression "(undefined1 *)((int)ppppuVar14 + 0x61)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppuVar14 + 0x61)" (( "(") (binary_expression "(int)ppppuVar14 + 0x61" (cast_expression "(int)ppppuVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppuVar14")) (+ "+") (number_literal "0x61")) () ")")))) () ")"))) (^ "^") (number_literal "1")) () ")")))) (; ";")) (} "}"))) (} "}"))) (if_statement "if ((uint *******)0x3fffffff < local_130) {\n                    \n    FUN_001c5fe0();\n  }" (if "if") (parenthesized_expression "((uint *******)0x3fffffff < local_130)" (( "(") (binary_expression "(uint *******)0x3fffffff < local_130" (cast_expression "(uint *******)0x3fffffff" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x3fffffff")) (< "<") (identifier "local_130")) () ")")) (compound_statement "{\n                    \n    FUN_001c5fe0();\n  }" ({ "{") (expression_statement "FUN_001c5fe0();" (call_expression "FUN_001c5fe0()" (identifier "FUN_001c5fe0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "local_14c = (int)local_130 * 4;" (assignment_expression "local_14c = (int)local_130 * 4" (identifier "local_14c") (= "=") (binary_expression "(int)local_130 * 4" (cast_expression "(int)local_130" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_130")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "local_158 = (undefined4 *)FUN_0017ebf0(local_14c);" (assignment_expression "local_158 = (undefined4 *)FUN_0017ebf0(local_14c)" (identifier "local_158") (= "=") (cast_expression "(undefined4 *)FUN_0017ebf0(local_14c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0017ebf0(local_14c)" (identifier "FUN_0017ebf0") (argument_list "(local_14c)" (( "(") (identifier "local_14c") () ")"))))) (; ";")) (expression_statement "iVar19 = local_14c;" (assignment_expression "iVar19 = local_14c" (identifier "iVar19") (= "=") (identifier "local_14c")) (; ";")) (expression_statement "puVar8 = local_158;" (assignment_expression "puVar8 = local_158" (identifier "puVar8") (= "=") (identifier "local_158")) (; ";")) (if_statement "if (pppppppuVar22 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }" (if "if") (parenthesized_expression "(pppppppuVar22 != (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar22 != (uint *******)0x0" (identifier "pppppppuVar22") (!= "!=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);\n  }" ({ "{") (do_statement "do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != local_158 + (int)pppppppuVar22);" (do "do") (compound_statement "{\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    }" ({ "{") (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" (* "*") (identifier "puVar8")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar8 = puVar8 + 1;" (assignment_expression "puVar8 = puVar8 + 1" (identifier "puVar8") (= "=") (binary_expression "puVar8 + 1" (identifier "puVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar8 != local_158 + (int)pppppppuVar22)" (( "(") (binary_expression "puVar8 != local_158 + (int)pppppppuVar22" (identifier "puVar8") (!= "!=") (binary_expression "local_158 + (int)pppppppuVar22" (identifier "local_158") (+ "+") (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")))) () ")")) (; ";")) (} "}"))) (expression_statement "local_15c = (undefined4 *)FUN_0017ebf0(local_14c);" (assignment_expression "local_15c = (undefined4 *)FUN_0017ebf0(local_14c)" (identifier "local_15c") (= "=") (cast_expression "(undefined4 *)FUN_0017ebf0(local_14c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0017ebf0(local_14c)" (identifier "FUN_0017ebf0") (argument_list "(local_14c)" (( "(") (identifier "local_14c") () ")"))))) (; ";")) (expression_statement "puVar24 = auStack_1ac;" (assignment_expression "puVar24 = auStack_1ac" (identifier "puVar24") (= "=") (identifier "auStack_1ac")) (; ";")) (expression_statement "puVar26 = auStack_1ac;" (assignment_expression "puVar26 = auStack_1ac" (identifier "puVar26") (= "=") (identifier "auStack_1ac")) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)(local_160 + 0x10);" (assignment_expression "pppppppuVar22 = (uint *******)(local_160 + 0x10)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)(local_160 + 0x10)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(local_160 + 0x10)" (( "(") (binary_expression "local_160 + 0x10" (identifier "local_160") (+ "+") (number_literal "0x10")) () ")")))) (; ";")) (expression_statement "puVar8 = local_15c;" (assignment_expression "puVar8 = local_15c" (identifier "puVar8") (= "=") (identifier "local_15c")) (; ";")) (expression_statement "local_134 = pppppppuVar22;" (assignment_expression "local_134 = pppppppuVar22" (identifier "local_134") (= "=") (identifier "pppppppuVar22")) (; ";")) (if_statement "if (local_130 != (uint *******)0x0) {\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }" (if "if") (parenthesized_expression "(local_130 != (uint *******)0x0)" (( "(") (binary_expression "local_130 != (uint *******)0x0" (identifier "local_130") (!= "!=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));\n    if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }\n  }" ({ "{") (do_statement "do {\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));" (do "do") (compound_statement "{\n      *puVar8 = 0;\n      puVar8 = puVar8 + 1;\n    }" ({ "{") (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" (* "*") (identifier "puVar8")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar8 = puVar8 + 1;" (assignment_expression "puVar8 = puVar8 + 1" (identifier "puVar8") (= "=") (binary_expression "puVar8 + 1" (identifier "puVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar8 != (undefined4 *)((int)local_15c + iVar19))" (( "(") (binary_expression "puVar8 != (undefined4 *)((int)local_15c + iVar19)" (identifier "puVar8") (!= "!=") (cast_expression "(undefined4 *)((int)local_15c + iVar19)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_15c + iVar19)" (( "(") (binary_expression "(int)local_15c + iVar19" (cast_expression "(int)local_15c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_15c")) (+ "+") (identifier "iVar19")) () ")")))) () ")")) (; ";")) (if_statement "if (local_130 != (uint *******)0x1) {\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }" (if "if") (parenthesized_expression "(local_130 != (uint *******)0x1)" (( "(") (binary_expression "local_130 != (uint *******)0x1" (identifier "local_130") (!= "!=") (cast_expression "(uint *******)0x1" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) () ")")) (compound_statement "{\n      pppppppuVar29 = (uint *******)0x1;\n      local_140 = (uint *******)0x0;\n      local_16c = local_120 + -0x3748f;\n      local_154 = param_1 + 0x24;\n      do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);\n      goto LAB_000a2028;\n    }" ({ "{") (expression_statement "pppppppuVar29 = (uint *******)0x1;" (assignment_expression "pppppppuVar29 = (uint *******)0x1" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)0x1" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "local_140 = (uint *******)0x0;" (assignment_expression "local_140 = (uint *******)0x0" (identifier "local_140") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_16c = local_120 + -0x3748f;" (assignment_expression "local_16c = local_120 + -0x3748f" (identifier "local_16c") (= "=") (binary_expression "local_120 + -0x3748f" (identifier "local_120") (+ "+") (number_literal "-0x3748f"))) (; ";")) (expression_statement "local_154 = param_1 + 0x24;" (assignment_expression "local_154 = param_1 + 0x24" (identifier "local_154") (= "=") (binary_expression "param_1 + 0x24" (identifier "param_1") (+ "+") (number_literal "0x24"))) (; ";")) (do_statement "do {\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      } while (pppppppuVar29 != local_130);" (do "do") (compound_statement "{\n        while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }\n        local_12c = (uint *******)pppppppuVar22[0xb];\n        if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }\n        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }\n        piVar11 = local_158 + (int)local_12c;\n        if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }\n        *piVar11 = -1;\n        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n        pppppppuVar22 = pppppppuVar22 + 0x10;\n      }" ({ "{") (while_statement "while( true ) {\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n          if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }\n          ppppppuVar21 = pppppppuVar22[1];\n          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;\nLAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);\n          pppppppuVar22 = pppppppuVar22 + 0x10;\n          if (pppppppuVar29 == local_130) goto LAB_000a2028;\n        }" ({ "{") (if_statement "if ((char)local_124 != '\0') {\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }" (if "if") (parenthesized_expression "((char)local_124 != '\0')" (( "(") (binary_expression "(char)local_124 != '\0'" (cast_expression "(char)local_124" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_124")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));\n          }" ({ "{") (expression_statement "local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));" (assignment_expression "local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0))" (identifier "local_140") (= "=") (cast_expression "(uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0))" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0))" (( "(") (binary_expression "(int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0)" (cast_expression "(int)local_140" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_140")) (+ "+") (call_expression "(uint)(((uint)pppppppuVar22[2] & 2) != 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(((uint)pppppppuVar22[2] & 2) != 0)" (( "(") (binary_expression "((uint)pppppppuVar22[2] & 2) != 0" (parenthesized_expression "((uint)pppppppuVar22[2] & 2)" (( "(") (binary_expression "(uint)pppppppuVar22[2] & 2" (cast_expression "(uint)pppppppuVar22[2]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "pppppppuVar22[2]" (identifier "pppppppuVar22") ([ "[") (number_literal "2") (] "]"))) (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")))) () ")")))) (; ";")) (} "}"))) (expression_statement "ppppppuVar21 = pppppppuVar22[1];" (assignment_expression "ppppppuVar21 = pppppppuVar22[1]" (identifier "ppppppuVar21") (= "=") (subscript_expression "pppppppuVar22[1]" (identifier "pppppppuVar22") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;" (if "if") (parenthesized_expression "((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4))" (( "(") (binary_expression "(ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)" (parenthesized_expression "(ppppppuVar21 == (uint ******)0x9)" (( "(") (binary_expression "ppppppuVar21 == (uint ******)0x9" (identifier "ppppppuVar21") (== "==") (cast_expression "(uint ******)0x9" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x9"))) () ")")) (|| "||") (parenthesized_expression "(ppppppuVar21 == (uint ******)0x4)" (( "(") (binary_expression "ppppppuVar21 == (uint ******)0x4" (identifier "ppppppuVar21") (== "==") (cast_expression "(uint ******)0x4" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x4"))) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_000a1f88:\n          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);" (statement_identifier "LAB_000a1f88") (: ":") (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1)" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)((int)pppppppuVar29 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar29 + 1)" (( "(") (binary_expression "(int)pppppppuVar29 + 1" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (+ "+") (number_literal "1")) () ")")))) (; ";"))) (expression_statement "pppppppuVar22 = pppppppuVar22 + 0x10;" (assignment_expression "pppppppuVar22 = pppppppuVar22 + 0x10" (identifier "pppppppuVar22") (= "=") (binary_expression "pppppppuVar22 + 0x10" (identifier "pppppppuVar22") (+ "+") (number_literal "0x10"))) (; ";")) (if_statement "if (pppppppuVar29 == local_130) goto LAB_000a2028;" (if "if") (parenthesized_expression "(pppppppuVar29 == local_130)" (( "(") (binary_expression "pppppppuVar29 == local_130" (identifier "pppppppuVar29") (== "==") (identifier "local_130")) () ")")) (goto_statement "goto LAB_000a2028;" (goto "goto") (statement_identifier "LAB_000a2028") (; ";"))) (} "}"))) (expression_statement "local_12c = (uint *******)pppppppuVar22[0xb];" (assignment_expression "local_12c = (uint *******)pppppppuVar22[0xb]" (identifier "local_12c") (= "=") (cast_expression "(uint *******)pppppppuVar22[0xb]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppuVar22[0xb]" (identifier "pppppppuVar22") ([ "[") (number_literal "0xb") (] "]")))) (; ";")) (if_statement "if ((uint *******)0xfeff < local_12c) {\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }" (if "if") (parenthesized_expression "((uint *******)0xfeff < local_12c)" (( "(") (binary_expression "(uint *******)0xfeff < local_12c" (cast_expression "(uint *******)0xfeff" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xfeff")) (< "<") (identifier "local_12c")) () ")")) (compound_statement "{\n                    \n          FUN_0004dee0(local_154);\n          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);\n        }" ({ "{") (expression_statement "FUN_0004dee0(local_154);" (call_expression "FUN_0004dee0(local_154)" (identifier "FUN_0004dee0") (argument_list "(local_154)" (( "(") (identifier "local_154") () ")"))) (; ";")) (expression_statement "local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);" (assignment_expression "local_12c = (uint *******)((int)local_12c + (int)param_1[0x29])" (identifier "local_12c") (= "=") (cast_expression "(uint *******)((int)local_12c + (int)param_1[0x29])" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)local_12c + (int)param_1[0x29])" (( "(") (binary_expression "(int)local_12c + (int)param_1[0x29]" (cast_expression "(int)local_12c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_12c")) (+ "+") (cast_expression "(int)param_1[0x29]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0x29]" (identifier "param_1") ([ "[") (number_literal "0x29") (] "]")))) () ")")))) (; ";")) (} "}"))) (if_statement "if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }" (if "if") (parenthesized_expression "((local_12c == (uint *******)0x0) || (local_130 <= local_12c))" (( "(") (binary_expression "(local_12c == (uint *******)0x0) || (local_130 <= local_12c)" (parenthesized_expression "(local_12c == (uint *******)0x0)" (( "(") (binary_expression "local_12c == (uint *******)0x0" (identifier "local_12c") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(local_130 <= local_12c)" (( "(") (binary_expression "local_130 <= local_12c" (identifier "local_130") (<= "<=") (identifier "local_12c")) () ")"))) () ")")) (compound_statement "{\n          uVar12 = gettext(local_16c);\n          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);\n          goto LAB_000a1f88;\n        }" ({ "{") (expression_statement "uVar12 = gettext(local_16c);" (assignment_expression "uVar12 = gettext(local_16c)" (identifier "uVar12") (= "=") (call_expression "gettext(local_16c)" (identifier "gettext") (argument_list "(local_16c)" (( "(") (identifier "local_16c") () ")")))) (; ";")) (expression_statement "FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);" (call_expression "FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c)" (identifier "FUN_00091980") (argument_list "(param_1,uVar12,pppppppuVar29,local_12c)" (( "(") (identifier "param_1") (, ",") (identifier "uVar12") (, ",") (identifier "pppppppuVar29") (, ",") (identifier "local_12c") () ")"))) (; ";")) (goto_statement "goto LAB_000a1f88;" (goto "goto") (statement_identifier "LAB_000a1f88") (; ";")) (} "}"))) (expression_statement "piVar11 = local_158 + (int)local_12c;" (assignment_expression "piVar11 = local_158 + (int)local_12c" (identifier "piVar11") (= "=") (binary_expression "local_158 + (int)local_12c" (identifier "local_158") (+ "+") (cast_expression "(int)local_12c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_12c")))) (; ";")) (if_statement "if (*piVar11 == 0) {\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }" (if "if") (parenthesized_expression "(*piVar11 == 0)" (( "(") (binary_expression "*piVar11 == 0" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          *piVar11 = (int)pppppppuVar29;\n          local_15c[(int)local_12c] = ppppppuVar21;\n          goto LAB_000a1f88;\n        }" ({ "{") (expression_statement "*piVar11 = (int)pppppppuVar29;" (assignment_expression "*piVar11 = (int)pppppppuVar29" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (= "=") (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29"))) (; ";")) (expression_statement "local_15c[(int)local_12c] = ppppppuVar21;" (assignment_expression "local_15c[(int)local_12c] = ppppppuVar21" (subscript_expression "local_15c[(int)local_12c]" (identifier "local_15c") ([ "[") (cast_expression "(int)local_12c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_12c")) (] "]")) (= "=") (identifier "ppppppuVar21")) (; ";")) (goto_statement "goto LAB_000a1f88;" (goto "goto") (statement_identifier "LAB_000a1f88") (; ";")) (} "}"))) (expression_statement "*piVar11 = -1;" (assignment_expression "*piVar11 = -1" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (= "=") (number_literal "-1")) (; ";")) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1)" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)((int)pppppppuVar29 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar29 + 1)" (( "(") (binary_expression "(int)pppppppuVar29 + 1" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar22 + 0x10;" (assignment_expression "pppppppuVar22 = pppppppuVar22 + 0x10" (identifier "pppppppuVar22") (= "=") (binary_expression "pppppppuVar22 + 0x10" (identifier "pppppppuVar22") (+ "+") (number_literal "0x10"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pppppppuVar29 != local_130)" (( "(") (binary_expression "pppppppuVar29 != local_130" (identifier "pppppppuVar29") (!= "!=") (identifier "local_130")) () ")")) (; ";")) (goto_statement "goto LAB_000a2028;" (goto "goto") (statement_identifier "LAB_000a2028") (; ";")) (} "}"))) (} "}"))) (expression_statement "local_140 = (uint *******)0x0;" (assignment_expression "local_140 = (uint *******)0x0" (identifier "local_140") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_000a2028:\n  if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }" (statement_identifier "LAB_000a2028") (: ":") (if_statement "if (local_135 == '\0') {\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }" (if "if") (parenthesized_expression "(local_135 == '\0')" (( "(") (binary_expression "local_135 == '\0'" (identifier "local_135") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);\n    if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }\n    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);\n    if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }\n  }" ({ "{") (expression_statement "pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);" (assignment_expression "pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_1[0xf] - (int)param_1[0xe] >> 2)" (( "(") (binary_expression "(int)param_1[0xf] - (int)param_1[0xe] >> 2" (binary_expression "(int)param_1[0xf] - (int)param_1[0xe]" (cast_expression "(int)param_1[0xf]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0xf]" (identifier "param_1") ([ "[") (number_literal "0xf") (] "]"))) (- "-") (cast_expression "(int)param_1[0xe]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")))) (>> ">>") (number_literal "2")) () ")")))) (; ";")) (if_statement "if (pppppppuVar22 < local_130) {\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }" (if "if") (parenthesized_expression "(pppppppuVar22 < local_130)" (( "(") (binary_expression "pppppppuVar22 < local_130" (identifier "pppppppuVar22") (< "<") (identifier "local_130")) () ")")) (compound_statement "{\n      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);\n    }" ({ "{") (expression_statement "FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);" (call_expression "FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22)" (identifier "FUN_000709d0") (argument_list "(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22)" (( "(") (binary_expression "param_1 + 0xe" (identifier "param_1") (+ "+") (number_literal "0xe")) (, ",") (binary_expression "(int)local_130 - (int)pppppppuVar22" (cast_expression "(int)local_130" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_130")) (- "-") (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22"))) () ")"))) (; ";")) (} "}")) (else_clause "else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }" (else "else") (if_statement "if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)) {\n      param_1[0xf] = ppppppuVar21;\n    }" (if "if") (parenthesized_expression "((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21))" (( "(") (binary_expression "(local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)" (parenthesized_expression "(local_130 < pppppppuVar22)" (( "(") (binary_expression "local_130 < pppppppuVar22" (identifier "local_130") (< "<") (identifier "pppppppuVar22")) () ")")) (&& "&&") (parenthesized_expression "(ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21)" (( "(") (comma_expression "ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),\n            param_1[0xf] != ppppppuVar21" (assignment_expression "ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c)" (identifier "ppppppuVar21") (= "=") (cast_expression "(uint ******)((int)param_1[0xe] + local_14c)" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)param_1[0xe] + local_14c)" (( "(") (binary_expression "(int)param_1[0xe] + local_14c" (cast_expression "(int)param_1[0xe]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]"))) (+ "+") (identifier "local_14c")) () ")")))) (, ",") (binary_expression "param_1[0xf] != ppppppuVar21" (subscript_expression "param_1[0xf]" (identifier "param_1") ([ "[") (number_literal "0xf") (] "]")) (!= "!=") (identifier "ppppppuVar21"))) () ")"))) () ")")) (compound_statement "{\n      param_1[0xf] = ppppppuVar21;\n    }" ({ "{") (expression_statement "param_1[0xf] = ppppppuVar21;" (assignment_expression "param_1[0xf] = ppppppuVar21" (subscript_expression "param_1[0xf]" (identifier "param_1") ([ "[") (number_literal "0xf") (] "]")) (= "=") (identifier "ppppppuVar21")) (; ";")) (} "}"))))) (expression_statement "pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);" (assignment_expression "pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_1[0x22] - (int)param_1[0x21] >> 3)" (( "(") (binary_expression "(int)param_1[0x22] - (int)param_1[0x21] >> 3" (binary_expression "(int)param_1[0x22] - (int)param_1[0x21]" (cast_expression "(int)param_1[0x22]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0x22]" (identifier "param_1") ([ "[") (number_literal "0x22") (] "]"))) (- "-") (cast_expression "(int)param_1[0x21]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]")))) (>> ">>") (number_literal "3")) () ")")))) (; ";")) (if_statement "if (pppppppuVar22 < local_130) {\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }\n    else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }" (if "if") (parenthesized_expression "(pppppppuVar22 < local_130)" (( "(") (binary_expression "pppppppuVar22 < local_130" (identifier "pppppppuVar22") (< "<") (identifier "local_130")) () ")")) (compound_statement "{\n                    \n      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);\n    }" ({ "{") (expression_statement "FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);" (call_expression "FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22)" (identifier "FUN_0004dfd0") (argument_list "(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22)" (( "(") (binary_expression "param_1 + 0x21" (identifier "param_1") (+ "+") (number_literal "0x21")) (, ",") (binary_expression "(int)local_130 - (int)pppppppuVar22" (cast_expression "(int)local_130" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_130")) (- "-") (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22"))) () ")"))) (; ";")) (} "}")) (else_clause "else if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }" (else "else") (if_statement "if ((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {\n      param_1[0x22] = ppppppuVar21;\n    }" (if "if") (parenthesized_expression "((local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21))" (( "(") (binary_expression "(local_130 < pppppppuVar22) &&\n            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)" (parenthesized_expression "(local_130 < pppppppuVar22)" (( "(") (binary_expression "local_130 < pppppppuVar22" (identifier "local_130") (< "<") (identifier "pppppppuVar22")) () ")")) (&& "&&") (parenthesized_expression "(ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)" (( "(") (comma_expression "ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21" (assignment_expression "ppppppuVar21 = param_1[0x21] + (int)local_130 * 2" (identifier "ppppppuVar21") (= "=") (binary_expression "param_1[0x21] + (int)local_130 * 2" (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]")) (+ "+") (binary_expression "(int)local_130 * 2" (cast_expression "(int)local_130" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_130")) (* "*") (number_literal "2")))) (, ",") (binary_expression "param_1[0x22] != ppppppuVar21" (subscript_expression "param_1[0x22]" (identifier "param_1") ([ "[") (number_literal "0x22") (] "]")) (!= "!=") (identifier "ppppppuVar21"))) () ")"))) () ")")) (compound_statement "{\n      param_1[0x22] = ppppppuVar21;\n    }" ({ "{") (expression_statement "param_1[0x22] = ppppppuVar21;" (assignment_expression "param_1[0x22] = ppppppuVar21" (subscript_expression "param_1[0x22]" (identifier "param_1") ([ "[") (number_literal "0x22") (] "]")) (= "=") (identifier "ppppppuVar21")) (; ";")) (} "}"))))) (} "}")))) (if_statement "if (param_1[7] == (uint ******)0x0) {\n                    \n                    \n    FUN_000917c0();\n  }" (if "if") (parenthesized_expression "(param_1[7] == (uint ******)0x0)" (( "(") (binary_expression "param_1[7] == (uint ******)0x0" (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]")) (== "==") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n                    \n    FUN_000917c0();\n  }" ({ "{") (expression_statement "FUN_000917c0();" (call_expression "FUN_000917c0()" (identifier "FUN_000917c0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "local_137 = FUN_0005cf90(param_1[7]);" (assignment_expression "local_137 = FUN_0005cf90(param_1[7])" (identifier "local_137") (= "=") (call_expression "FUN_0005cf90(param_1[7])" (identifier "FUN_0005cf90") (argument_list "(param_1[7])" (( "(") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]")) () ")")))) (; ";")) (if_statement "if (local_137 == 0) {\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    \n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }\n  else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }" (if "if") (parenthesized_expression "(local_137 == 0)" (( "(") (binary_expression "local_137 == 0" (identifier "local_137") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }\n    pppppppuVar29 = local_130;\n    local_b0 = (void *)0x0;\n    local_ac = 0;\n    local_a8 = (void *)0x0;\n    local_a4 = 0;\n    local_a0 = (byte *)0x0;\n    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);\n                    \n    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);\n    pppppppuVar22 = local_120;\n    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);\n    local_a4 = (uint)pppppppuVar29 & 0x1f;\n    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);\n    local_ac = 0;\n    memset(local_b0,0,(size_t)pppppppuVar27);\n    pppppuVar15 = (*local_13c)[2];\n    if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }\n    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);\n    pppppppuVar29 = (uint *******)(uint)bVar3;\n    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);\n    if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }\n    local_14c = CONCAT31(local_14c._1_3_,bVar3);\n    local_e0 = (uint *******)0x0;\n    local_dc = (uint *******)0x0;\n    local_d8 = (uint *******)0x0;\n    local_d4 = (int *)0x0;\n    local_d0 = (int *)0x0;\n    local_cc = (int *)0x0;\n    local_c8 = (int *)0x0;\n    local_c4 = (int *)0x0;\n    local_c0 = (int *)0x0;\n    local_bc = (int *)0x0;\n    local_b8 = (int *)0x0;\n    local_b4 = (int *)0x0;\n    local_f0 = (uint *******)0x1;\n    if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }\n    if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }\n    if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }\n    if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }\n    if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }\n    if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }\n  }" ({ "{") (if_statement "if (local_140 != (uint *******)0x0) {\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }" (if "if") (parenthesized_expression "(local_140 != (uint *******)0x0)" (( "(") (binary_expression "local_140 != (uint *******)0x0" (identifier "local_140") (!= "!=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }\n      ppppuVar14 = (*local_13c)[2][0x164f];\n      local_ec = param_1;\n      pppuVar4 = ppppuVar14[8];\n      if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }\n      if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }\n      ppppppuVar21 = param_1[0x48];\n      local_12c = (uint *******)param_1[0x4a];\n      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }\n      *(byte *)((int)param_1 + 0x11d) = 1;\n    }" ({ "{") (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }" (if "if") (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" (( "(") (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]")) (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n                    \n        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n      }" ({ "{") (expression_statement "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);" (call_expression "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" (identifier "FUN_0005f0b0") (argument_list "(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" (( "(") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4")) (, ",") (number_literal "0x5c") (, ",") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1")) (, ",") (number_literal "0") () ")"))) (; ";")) (} "}"))) (expression_statement "ppppuVar14 = (*local_13c)[2][0x164f];" (assignment_expression "ppppuVar14 = (*local_13c)[2][0x164f]" (identifier "ppppuVar14") (= "=") (subscript_expression "(*local_13c)[2][0x164f]" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]")) ([ "[") (number_literal "0x164f") (] "]"))) (; ";")) (expression_statement "local_ec = param_1;" (assignment_expression "local_ec = param_1" (identifier "local_ec") (= "=") (identifier "param_1")) (; ";")) (expression_statement "pppuVar4 = ppppuVar14[8];" (assignment_expression "pppuVar4 = ppppuVar14[8]" (identifier "pppuVar4") (= "=") (subscript_expression "ppppuVar14[8]" (identifier "ppppuVar14") ([ "[") (number_literal "8") (] "]"))) (; ";")) (if_statement "if (pppuVar4 == ppppuVar14[9]) {\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }\n      else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }" (if "if") (parenthesized_expression "(pppuVar4 == ppppuVar14[9])" (( "(") (binary_expression "pppuVar4 == ppppuVar14[9]" (identifier "pppuVar4") (== "==") (subscript_expression "ppppuVar14[9]" (identifier "ppppuVar14") ([ "[") (number_literal "9") (] "]"))) () ")")) (compound_statement "{\n                    \n        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);\n      }" ({ "{") (expression_statement "FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);" (call_expression "FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec)" (identifier "FUN_00097230") (argument_list "(ppppuVar14 + 7,pppuVar4,&local_ec)" (( "(") (binary_expression "ppppuVar14 + 7" (identifier "ppppuVar14") (+ "+") (number_literal "7")) (, ",") (identifier "pppuVar4") (, ",") (pointer_expression "&local_ec" (& "&") (identifier "local_ec")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }" (else "else") (compound_statement "{\n        *pppuVar4 = (uint **)param_1;\n        ppppuVar14[8] = pppuVar4 + 1;\n      }" ({ "{") (expression_statement "*pppuVar4 = (uint **)param_1;" (assignment_expression "*pppuVar4 = (uint **)param_1" (pointer_expression "*pppuVar4" (* "*") (identifier "pppuVar4")) (= "=") (cast_expression "(uint **)param_1" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "param_1"))) (; ";")) (expression_statement "ppppuVar14[8] = pppuVar4 + 1;" (assignment_expression "ppppuVar14[8] = pppuVar4 + 1" (subscript_expression "ppppuVar14[8]" (identifier "ppppuVar14") ([ "[") (number_literal "8") (] "]")) (= "=") (binary_expression "pppuVar4 + 1" (identifier "pppuVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")))) (if_statement "if ((uint *******)0x28f5c28 < local_140) {\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }" (if "if") (parenthesized_expression "((uint *******)0x28f5c28 < local_140)" (( "(") (binary_expression "(uint *******)0x28f5c28 < local_140" (cast_expression "(uint *******)0x28f5c28" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x28f5c28")) (< "<") (identifier "local_140")) () ")")) (compound_statement "{\n                    \n                    \n        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));\n      }" ({ "{") (expression_statement "FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));" (call_expression "FUN_001c6190((byte *)((int)local_120 + -0xe7a7d))" (identifier "FUN_001c6190") (argument_list "((byte *)((int)local_120 + -0xe7a7d))" (( "(") (cast_expression "(byte *)((int)local_120 + -0xe7a7d)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_120 + -0xe7a7d)" (( "(") (binary_expression "(int)local_120 + -0xe7a7d" (cast_expression "(int)local_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_120")) (+ "+") (number_literal "-0xe7a7d")) () ")"))) () ")"))) (; ";")) (} "}"))) (expression_statement "ppppppuVar21 = param_1[0x48];" (assignment_expression "ppppppuVar21 = param_1[0x48]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0x48]" (identifier "param_1") ([ "[") (number_literal "0x48") (] "]"))) (; ";")) (expression_statement "local_12c = (uint *******)param_1[0x4a];" (assignment_expression "local_12c = (uint *******)param_1[0x4a]" (identifier "local_12c") (= "=") (cast_expression "(uint *******)param_1[0x4a]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[0x4a]" (identifier "param_1") ([ "[") (number_literal "0x4a") (] "]")))) (; ";")) (if_statement "if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }" (if "if") (parenthesized_expression "((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140)" (( "(") (binary_expression "(uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140" (cast_expression "(uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7)" (( "(") (binary_expression "((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7" (parenthesized_expression "((int)local_12c - (int)ppppppuVar21 >> 2)" (( "(") (binary_expression "(int)local_12c - (int)ppppppuVar21 >> 2" (binary_expression "(int)local_12c - (int)ppppppuVar21" (cast_expression "(int)local_12c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_12c")) (- "-") (cast_expression "(int)ppppppuVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar21"))) (>> ">>") (number_literal "2")) () ")")) (* "*") (number_literal "-0x3d70a3d7")) () ")"))) (< "<") (identifier "local_140")) () ")")) (compound_statement "{\n        ppppppuVar17 = param_1[0x49];\n        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);\n        local_140 = (uint *******)((int)local_140 * 100);\n                    \n        local_12c = (uint *******)FUN_0017ebf0(local_140);\n        if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }\n        ppppppuVar21 = param_1[0x49];\n        ppppppuVar17 = param_1[0x48];\n        if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }\n        if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }\n        param_1[0x48] = (uint ******)local_12c;\n        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);\n        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);\n      }" ({ "{") (expression_statement "ppppppuVar17 = param_1[0x49];" (assignment_expression "ppppppuVar17 = param_1[0x49]" (identifier "ppppppuVar17") (= "=") (subscript_expression "param_1[0x49]" (identifier "param_1") ([ "[") (number_literal "0x49") (] "]"))) (; ";")) (expression_statement "local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);" (assignment_expression "local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21)" (identifier "local_124") (= "=") (cast_expression "(uint *******)((int)ppppppuVar17 - (int)ppppppuVar21)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)ppppppuVar17 - (int)ppppppuVar21)" (( "(") (binary_expression "(int)ppppppuVar17 - (int)ppppppuVar21" (cast_expression "(int)ppppppuVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar17")) (- "-") (cast_expression "(int)ppppppuVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar21"))) () ")")))) (; ";")) (expression_statement "local_140 = (uint *******)((int)local_140 * 100);" (assignment_expression "local_140 = (uint *******)((int)local_140 * 100)" (identifier "local_140") (= "=") (cast_expression "(uint *******)((int)local_140 * 100)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)local_140 * 100)" (( "(") (binary_expression "(int)local_140 * 100" (cast_expression "(int)local_140" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_140")) (* "*") (number_literal "100")) () ")")))) (; ";")) (expression_statement "local_12c = (uint *******)FUN_0017ebf0(local_140);" (assignment_expression "local_12c = (uint *******)FUN_0017ebf0(local_140)" (identifier "local_12c") (= "=") (cast_expression "(uint *******)FUN_0017ebf0(local_140)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_0017ebf0(local_140)" (identifier "FUN_0017ebf0") (argument_list "(local_140)" (( "(") (identifier "local_140") () ")"))))) (; ";")) (if_statement "if (ppppppuVar21 != ppppppuVar17) {\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }" (if "if") (parenthesized_expression "(ppppppuVar21 != ppppppuVar17)" (( "(") (binary_expression "ppppppuVar21 != ppppppuVar17" (identifier "ppppppuVar21") (!= "!=") (identifier "ppppppuVar17")) () ")")) (compound_statement "{\n          ppppppuVar13 = ppppppuVar21 + 2;\n          pppppppuVar22 = local_12c;\n          do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);\n        }" ({ "{") (expression_statement "ppppppuVar13 = ppppppuVar21 + 2;" (assignment_expression "ppppppuVar13 = ppppppuVar21 + 2" (identifier "ppppppuVar13") (= "=") (binary_expression "ppppppuVar21 + 2" (identifier "ppppppuVar21") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" (identifier "pppppppuVar22") (= "=") (identifier "local_12c")) (; ";")) (do_statement "do {\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          } while (ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);" (do "do") (compound_statement "{\n            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);\n            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }\n            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];\n            ppppppuVar13[-2] = (uint *****)ppppppuVar13;\n            ppppppuVar20 = ppppppuVar13 + 0x19;\n            ppppppuVar13[-1] = (uint *****)0x0;\n            *(undefined1 *)ppppppuVar13 = 0;\n            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];\n            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];\n            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];\n            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];\n            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];\n            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];\n            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];\n            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];\n            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];\n            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];\n            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];\n            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];\n            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];\n            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];\n            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];\n            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];\n            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];\n            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];\n            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];\n            ppppppuVar13 = ppppppuVar20;\n            pppppppuVar22 = pppppppuVar22 + 0x19;\n          }" ({ "{") (expression_statement "*pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);" (assignment_expression "*pppppppuVar22 = (uint ******)(pppppppuVar22 + 2)" (pointer_expression "*pppppppuVar22" (* "*") (identifier "pppppppuVar22")) (= "=") (cast_expression "(uint ******)(pppppppuVar22 + 2)" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(pppppppuVar22 + 2)" (( "(") (binary_expression "pppppppuVar22 + 2" (identifier "pppppppuVar22") (+ "+") (number_literal "2")) () ")")))) (; ";")) (if_statement "if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }\n            else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }" (if "if") (parenthesized_expression "((uint ******)ppppppuVar13[-2] == ppppppuVar13)" (( "(") (binary_expression "(uint ******)ppppppuVar13[-2] == ppppppuVar13" (cast_expression "(uint ******)ppppppuVar13[-2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[-2]" (identifier "ppppppuVar13") ([ "[") (number_literal "-2") (] "]"))) (== "==") (identifier "ppppppuVar13")) () ")")) (compound_statement "{\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];\n              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];\n              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];\n            }" ({ "{") (expression_statement "pppppppuVar22[2] = (uint ******)*ppppppuVar13;" (assignment_expression "pppppppuVar22[2] = (uint ******)*ppppppuVar13" (subscript_expression "pppppppuVar22[2]" (identifier "pppppppuVar22") ([ "[") (number_literal "2") (] "]")) (= "=") (cast_expression "(uint ******)*ppppppuVar13" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (pointer_expression "*ppppppuVar13" (* "*") (identifier "ppppppuVar13")))) (; ";")) (expression_statement "pppppppuVar22[3] = (uint ******)ppppppuVar13[1];" (assignment_expression "pppppppuVar22[3] = (uint ******)ppppppuVar13[1]" (subscript_expression "pppppppuVar22[3]" (identifier "pppppppuVar22") ([ "[") (number_literal "3") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[1]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[1]" (identifier "ppppppuVar13") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[4] = (uint ******)ppppppuVar13[2];" (assignment_expression "pppppppuVar22[4] = (uint ******)ppppppuVar13[2]" (subscript_expression "pppppppuVar22[4]" (identifier "pppppppuVar22") ([ "[") (number_literal "4") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[2]" (identifier "ppppppuVar13") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[5] = (uint ******)ppppppuVar13[3];" (assignment_expression "pppppppuVar22[5] = (uint ******)ppppppuVar13[3]" (subscript_expression "pppppppuVar22[5]" (identifier "pppppppuVar22") ([ "[") (number_literal "5") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[3]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[3]" (identifier "ppppppuVar13") ([ "[") (number_literal "3") (] "]")))) (; ";")) (} "}")) (else_clause "else {\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }" (else "else") (compound_statement "{\n              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];\n              pppppppuVar22[2] = (uint ******)*ppppppuVar13;\n            }" ({ "{") (expression_statement "*pppppppuVar22 = (uint ******)ppppppuVar13[-2];" (assignment_expression "*pppppppuVar22 = (uint ******)ppppppuVar13[-2]" (pointer_expression "*pppppppuVar22" (* "*") (identifier "pppppppuVar22")) (= "=") (cast_expression "(uint ******)ppppppuVar13[-2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[-2]" (identifier "ppppppuVar13") ([ "[") (number_literal "-2") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[2] = (uint ******)*ppppppuVar13;" (assignment_expression "pppppppuVar22[2] = (uint ******)*ppppppuVar13" (subscript_expression "pppppppuVar22[2]" (identifier "pppppppuVar22") ([ "[") (number_literal "2") (] "]")) (= "=") (cast_expression "(uint ******)*ppppppuVar13" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (pointer_expression "*ppppppuVar13" (* "*") (identifier "ppppppuVar13")))) (; ";")) (} "}")))) (expression_statement "pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];" (assignment_expression "pppppppuVar22[1] = (uint ******)ppppppuVar13[-1]" (subscript_expression "pppppppuVar22[1]" (identifier "pppppppuVar22") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[-1]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[-1]" (identifier "ppppppuVar13") ([ "[") (number_literal "-1") (] "]")))) (; ";")) (expression_statement "ppppppuVar13[-2] = (uint *****)ppppppuVar13;" (assignment_expression "ppppppuVar13[-2] = (uint *****)ppppppuVar13" (subscript_expression "ppppppuVar13[-2]" (identifier "ppppppuVar13") ([ "[") (number_literal "-2") (] "]")) (= "=") (cast_expression "(uint *****)ppppppuVar13" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (identifier "ppppppuVar13"))) (; ";")) (expression_statement "ppppppuVar20 = ppppppuVar13 + 0x19;" (assignment_expression "ppppppuVar20 = ppppppuVar13 + 0x19" (identifier "ppppppuVar20") (= "=") (binary_expression "ppppppuVar13 + 0x19" (identifier "ppppppuVar13") (+ "+") (number_literal "0x19"))) (; ";")) (expression_statement "ppppppuVar13[-1] = (uint *****)0x0;" (assignment_expression "ppppppuVar13[-1] = (uint *****)0x0" (subscript_expression "ppppppuVar13[-1]" (identifier "ppppppuVar13") ([ "[") (number_literal "-1") (] "]")) (= "=") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "*(undefined1 *)ppppppuVar13 = 0;" (assignment_expression "*(undefined1 *)ppppppuVar13 = 0" (pointer_expression "*(undefined1 *)ppppppuVar13" (* "*") (cast_expression "(undefined1 *)ppppppuVar13" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppppppuVar13"))) (= "=") (number_literal "0")) (; ";")) (expression_statement "pppppppuVar22[6] = (uint ******)ppppppuVar13[4];" (assignment_expression "pppppppuVar22[6] = (uint ******)ppppppuVar13[4]" (subscript_expression "pppppppuVar22[6]" (identifier "pppppppuVar22") ([ "[") (number_literal "6") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[4]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[4]" (identifier "ppppppuVar13") ([ "[") (number_literal "4") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[7] = (uint ******)ppppppuVar13[5];" (assignment_expression "pppppppuVar22[7] = (uint ******)ppppppuVar13[5]" (subscript_expression "pppppppuVar22[7]" (identifier "pppppppuVar22") ([ "[") (number_literal "7") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[5]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[5]" (identifier "ppppppuVar13") ([ "[") (number_literal "5") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[8] = (uint ******)ppppppuVar13[6];" (assignment_expression "pppppppuVar22[8] = (uint ******)ppppppuVar13[6]" (subscript_expression "pppppppuVar22[8]" (identifier "pppppppuVar22") ([ "[") (number_literal "8") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[6]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[6]" (identifier "ppppppuVar13") ([ "[") (number_literal "6") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[9] = (uint ******)ppppppuVar13[7];" (assignment_expression "pppppppuVar22[9] = (uint ******)ppppppuVar13[7]" (subscript_expression "pppppppuVar22[9]" (identifier "pppppppuVar22") ([ "[") (number_literal "9") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[7]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[7]" (identifier "ppppppuVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[10] = (uint ******)ppppppuVar13[8];" (assignment_expression "pppppppuVar22[10] = (uint ******)ppppppuVar13[8]" (subscript_expression "pppppppuVar22[10]" (identifier "pppppppuVar22") ([ "[") (number_literal "10") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[8]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[8]" (identifier "ppppppuVar13") ([ "[") (number_literal "8") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];" (assignment_expression "pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9]" (subscript_expression "pppppppuVar22[0xb]" (identifier "pppppppuVar22") ([ "[") (number_literal "0xb") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[9]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[9]" (identifier "ppppppuVar13") ([ "[") (number_literal "9") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];" (assignment_expression "pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10]" (subscript_expression "pppppppuVar22[0xc]" (identifier "pppppppuVar22") ([ "[") (number_literal "0xc") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[10]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[10]" (identifier "ppppppuVar13") ([ "[") (number_literal "10") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];" (assignment_expression "pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb]" (subscript_expression "pppppppuVar22[0xd]" (identifier "pppppppuVar22") ([ "[") (number_literal "0xd") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0xb]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0xb]" (identifier "ppppppuVar13") ([ "[") (number_literal "0xb") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];" (assignment_expression "pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc]" (subscript_expression "pppppppuVar22[0xe]" (identifier "pppppppuVar22") ([ "[") (number_literal "0xe") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0xc]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0xc]" (identifier "ppppppuVar13") ([ "[") (number_literal "0xc") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];" (assignment_expression "pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd]" (subscript_expression "pppppppuVar22[0xf]" (identifier "pppppppuVar22") ([ "[") (number_literal "0xf") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0xd]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0xd]" (identifier "ppppppuVar13") ([ "[") (number_literal "0xd") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];" (assignment_expression "pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe]" (subscript_expression "pppppppuVar22[0x10]" (identifier "pppppppuVar22") ([ "[") (number_literal "0x10") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0xe]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0xe]" (identifier "ppppppuVar13") ([ "[") (number_literal "0xe") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];" (assignment_expression "pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf]" (subscript_expression "pppppppuVar22[0x11]" (identifier "pppppppuVar22") ([ "[") (number_literal "0x11") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0xf]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0xf]" (identifier "ppppppuVar13") ([ "[") (number_literal "0xf") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];" (assignment_expression "pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10]" (subscript_expression "pppppppuVar22[0x12]" (identifier "pppppppuVar22") ([ "[") (number_literal "0x12") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0x10]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0x10]" (identifier "ppppppuVar13") ([ "[") (number_literal "0x10") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];" (assignment_expression "pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11]" (subscript_expression "pppppppuVar22[0x13]" (identifier "pppppppuVar22") ([ "[") (number_literal "0x13") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0x11]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0x11]" (identifier "ppppppuVar13") ([ "[") (number_literal "0x11") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];" (assignment_expression "pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12]" (subscript_expression "pppppppuVar22[0x14]" (identifier "pppppppuVar22") ([ "[") (number_literal "0x14") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0x12]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0x12]" (identifier "ppppppuVar13") ([ "[") (number_literal "0x12") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];" (assignment_expression "pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13]" (subscript_expression "pppppppuVar22[0x15]" (identifier "pppppppuVar22") ([ "[") (number_literal "0x15") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0x13]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0x13]" (identifier "ppppppuVar13") ([ "[") (number_literal "0x13") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];" (assignment_expression "pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14]" (subscript_expression "pppppppuVar22[0x16]" (identifier "pppppppuVar22") ([ "[") (number_literal "0x16") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0x14]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0x14]" (identifier "ppppppuVar13") ([ "[") (number_literal "0x14") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];" (assignment_expression "pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15]" (subscript_expression "pppppppuVar22[0x17]" (identifier "pppppppuVar22") ([ "[") (number_literal "0x17") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0x15]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0x15]" (identifier "ppppppuVar13") ([ "[") (number_literal "0x15") (] "]")))) (; ";")) (expression_statement "pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];" (assignment_expression "pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16]" (subscript_expression "pppppppuVar22[0x18]" (identifier "pppppppuVar22") ([ "[") (number_literal "0x18") (] "]")) (= "=") (cast_expression "(uint ******)ppppppuVar13[0x16]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar13[0x16]" (identifier "ppppppuVar13") ([ "[") (number_literal "0x16") (] "]")))) (; ";")) (expression_statement "ppppppuVar13 = ppppppuVar20;" (assignment_expression "ppppppuVar13 = ppppppuVar20" (identifier "ppppppuVar13") (= "=") (identifier "ppppppuVar20")) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar22 + 0x19;" (assignment_expression "pppppppuVar22 = pppppppuVar22 + 0x19" (identifier "pppppppuVar22") (= "=") (binary_expression "pppppppuVar22 + 0x19" (identifier "pppppppuVar22") (+ "+") (number_literal "0x19"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20)" (( "(") (binary_expression "ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20" (binary_expression "ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19 + 0x1b" (binary_expression "ppppppuVar21 +\n                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19" (identifier "ppppppuVar21") (+ "+") (binary_expression "(((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff) * 0x19" (parenthesized_expression "(((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff)" (( "(") (binary_expression "((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &\n                   0x3fffffff" (binary_expression "((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29" (parenthesized_expression "((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2)" (( "(") (binary_expression "(uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2" (call_expression "(uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21))" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((int)ppppppuVar17 + (-100 - (int)ppppppuVar21))" (( "(") (binary_expression "(int)ppppppuVar17 + (-100 - (int)ppppppuVar21)" (cast_expression "(int)ppppppuVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar17")) (+ "+") (parenthesized_expression "(-100 - (int)ppppppuVar21)" (( "(") (binary_expression "-100 - (int)ppppppuVar21" (number_literal "-100") (- "-") (cast_expression "(int)ppppppuVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar21"))) () ")"))) () ")"))) (>> ">>") (number_literal "2")) () ")")) (* "*") (number_literal "0x28f5c29")) (& "&") (number_literal "0x3fffffff")) () ")")) (* "*") (number_literal "0x19"))) (+ "+") (number_literal "0x1b")) (!= "!=") (identifier "ppppppuVar20")) () ")")) (; ";")) (} "}"))) (expression_statement "ppppppuVar21 = param_1[0x49];" (assignment_expression "ppppppuVar21 = param_1[0x49]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0x49]" (identifier "param_1") ([ "[") (number_literal "0x49") (] "]"))) (; ";")) (expression_statement "ppppppuVar17 = param_1[0x48];" (assignment_expression "ppppppuVar17 = param_1[0x48]" (identifier "ppppppuVar17") (= "=") (subscript_expression "param_1[0x48]" (identifier "param_1") ([ "[") (number_literal "0x48") (] "]"))) (; ";")) (if_statement "if (ppppppuVar21 != ppppppuVar17) {\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }" (if "if") (parenthesized_expression "(ppppppuVar21 != ppppppuVar17)" (( "(") (binary_expression "ppppppuVar21 != ppppppuVar17" (identifier "ppppppuVar21") (!= "!=") (identifier "ppppppuVar17")) () ")")) (compound_statement "{\n          do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);\n          ppppppuVar17 = param_1[0x48];\n        }" ({ "{") (do_statement "do {\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          } while (ppppppuVar21 != ppppppuVar17);" (do "do") (compound_statement "{\n            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }\n            ppppppuVar17 = ppppppuVar17 + 0x19;\n          }" ({ "{") (if_statement "if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {\n              FUN_001807a0(*ppppppuVar17);\n            }" (if "if") (parenthesized_expression "((uint ******)*ppppppuVar17 != ppppppuVar17 + 2)" (( "(") (binary_expression "(uint ******)*ppppppuVar17 != ppppppuVar17 + 2" (cast_expression "(uint ******)*ppppppuVar17" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (pointer_expression "*ppppppuVar17" (* "*") (identifier "ppppppuVar17"))) (!= "!=") (binary_expression "ppppppuVar17 + 2" (identifier "ppppppuVar17") (+ "+") (number_literal "2"))) () ")")) (compound_statement "{\n              FUN_001807a0(*ppppppuVar17);\n            }" ({ "{") (expression_statement "FUN_001807a0(*ppppppuVar17);" (call_expression "FUN_001807a0(*ppppppuVar17)" (identifier "FUN_001807a0") (argument_list "(*ppppppuVar17)" (( "(") (pointer_expression "*ppppppuVar17" (* "*") (identifier "ppppppuVar17")) () ")"))) (; ";")) (} "}"))) (expression_statement "ppppppuVar17 = ppppppuVar17 + 0x19;" (assignment_expression "ppppppuVar17 = ppppppuVar17 + 0x19" (identifier "ppppppuVar17") (= "=") (binary_expression "ppppppuVar17 + 0x19" (identifier "ppppppuVar17") (+ "+") (number_literal "0x19"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(ppppppuVar21 != ppppppuVar17)" (( "(") (binary_expression "ppppppuVar21 != ppppppuVar17" (identifier "ppppppuVar21") (!= "!=") (identifier "ppppppuVar17")) () ")")) (; ";")) (expression_statement "ppppppuVar17 = param_1[0x48];" (assignment_expression "ppppppuVar17 = param_1[0x48]" (identifier "ppppppuVar17") (= "=") (subscript_expression "param_1[0x48]" (identifier "param_1") ([ "[") (number_literal "0x48") (] "]"))) (; ";")) (} "}"))) (if_statement "if (ppppppuVar17 != (uint ******)0x0) {\n          FUN_001807a0(ppppppuVar17);\n        }" (if "if") (parenthesized_expression "(ppppppuVar17 != (uint ******)0x0)" (( "(") (binary_expression "ppppppuVar17 != (uint ******)0x0" (identifier "ppppppuVar17") (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          FUN_001807a0(ppppppuVar17);\n        }" ({ "{") (expression_statement "FUN_001807a0(ppppppuVar17);" (call_expression "FUN_001807a0(ppppppuVar17)" (identifier "FUN_001807a0") (argument_list "(ppppppuVar17)" (( "(") (identifier "ppppppuVar17") () ")"))) (; ";")) (} "}"))) (expression_statement "param_1[0x48] = (uint ******)local_12c;" (assignment_expression "param_1[0x48] = (uint ******)local_12c" (subscript_expression "param_1[0x48]" (identifier "param_1") ([ "[") (number_literal "0x48") (] "]")) (= "=") (cast_expression "(uint ******)local_12c" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "local_12c"))) (; ";")) (expression_statement "param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);" (assignment_expression "param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c)" (subscript_expression "param_1[0x49]" (identifier "param_1") ([ "[") (number_literal "0x49") (] "]")) (= "=") (cast_expression "(uint ******)((int)local_124 + (int)local_12c)" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)local_124 + (int)local_12c)" (( "(") (binary_expression "(int)local_124 + (int)local_12c" (cast_expression "(int)local_124" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_124")) (+ "+") (cast_expression "(int)local_12c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_12c"))) () ")")))) (; ";")) (expression_statement "param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);" (assignment_expression "param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c)" (subscript_expression "param_1[0x4a]" (identifier "param_1") ([ "[") (number_literal "0x4a") (] "]")) (= "=") (cast_expression "(uint ******)((int)local_140 + (int)local_12c)" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)local_140 + (int)local_12c)" (( "(") (binary_expression "(int)local_140 + (int)local_12c" (cast_expression "(int)local_140" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_140")) (+ "+") (cast_expression "(int)local_12c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_12c"))) () ")")))) (; ";")) (} "}"))) (expression_statement "*(byte *)((int)param_1 + 0x11d) = 1;" (assignment_expression "*(byte *)((int)param_1 + 0x11d) = 1" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" (* "*") (cast_expression "(byte *)((int)param_1 + 0x11d)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_1 + 0x11d)" (( "(") (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "0x11d")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}"))) (expression_statement "pppppppuVar29 = local_130;" (assignment_expression "pppppppuVar29 = local_130" (identifier "pppppppuVar29") (= "=") (identifier "local_130")) (; ";")) (expression_statement "local_b0 = (void *)0x0;" (assignment_expression "local_b0 = (void *)0x0" (identifier "local_b0") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" (identifier "local_ac") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a8 = (void *)0x0;" (assignment_expression "local_a8 = (void *)0x0" (identifier "local_a8") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_a4 = 0;" (assignment_expression "local_a4 = 0" (identifier "local_a4") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a0 = (byte *)0x0;" (assignment_expression "local_a0 = (byte *)0x0" (identifier "local_a0") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);" (assignment_expression "pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4)" (identifier "pppppppuVar27") (= "=") (cast_expression "(uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(((uint)((int)local_130 + 0x1fU) >> 5) * 4)" (( "(") (binary_expression "((uint)((int)local_130 + 0x1fU) >> 5) * 4" (parenthesized_expression "((uint)((int)local_130 + 0x1fU) >> 5)" (( "(") (binary_expression "(uint)((int)local_130 + 0x1fU) >> 5" (call_expression "(uint)((int)local_130 + 0x1fU)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((int)local_130 + 0x1fU)" (( "(") (binary_expression "(int)local_130 + 0x1fU" (cast_expression "(int)local_130" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_130")) (+ "+") (number_literal "0x1fU")) () ")"))) (>> ">>") (number_literal "5")) () ")")) (* "*") (number_literal "4")) () ")")))) (; ";")) (expression_statement "local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);" (assignment_expression "local_b0 = (void *)FUN_0017ebf0(pppppppuVar27)" (identifier "local_b0") (= "=") (cast_expression "(void *)FUN_0017ebf0(pppppppuVar27)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0017ebf0(pppppppuVar27)" (identifier "FUN_0017ebf0") (argument_list "(pppppppuVar27)" (( "(") (identifier "pppppppuVar27") () ")"))))) (; ";")) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";")) (expression_statement "local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);" (assignment_expression "local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27)" (identifier "local_a0") (= "=") (cast_expression "(byte *)((int)local_b0 + (int)pppppppuVar27)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + (int)pppppppuVar27)" (( "(") (binary_expression "(int)local_b0 + (int)pppppppuVar27" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (cast_expression "(int)pppppppuVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar27"))) () ")")))) (; ";")) (expression_statement "local_a4 = (uint)pppppppuVar29 & 0x1f;" (assignment_expression "local_a4 = (uint)pppppppuVar29 & 0x1f" (identifier "local_a4") (= "=") (binary_expression "(uint)pppppppuVar29 & 0x1f" (cast_expression "(uint)pppppppuVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppuVar29")) (& "&") (number_literal "0x1f"))) (; ";")) (expression_statement "local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);" (assignment_expression "local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4)" (identifier "local_a8") (= "=") (cast_expression "(void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4)" (( "(") (binary_expression "(int)local_b0 + ((int)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (binary_expression "((int)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((int)pppppppuVar29 >> 5)" (( "(") (binary_expression "(int)pppppppuVar29 >> 5" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (>> ">>") (number_literal "5")) () ")")) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" (identifier "local_ac") (= "=") (number_literal "0")) (; ";")) (expression_statement "memset(local_b0,0,(size_t)pppppppuVar27);" (call_expression "memset(local_b0,0,(size_t)pppppppuVar27)" (identifier "memset") (argument_list "(local_b0,0,(size_t)pppppppuVar27)" (( "(") (identifier "local_b0") (, ",") (number_literal "0") (, ",") (cast_expression "(size_t)pppppppuVar27" (( "(") (type_descriptor "size_t" (primitive_type "size_t")) () ")") (identifier "pppppppuVar27")) () ")"))) (; ";")) (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" (identifier "pppppuVar15") (= "=") (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]"))) (; ";")) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }" (if "if") (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar15 == (uint *****)0x0" (identifier "pppppuVar15") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n                    \n      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);\n    }" ({ "{") (expression_statement "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);" (call_expression "FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" (identifier "FUN_0005f0b0") (argument_list "(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0)" (( "(") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4")) (, ",") (number_literal "0x5c") (, ",") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1")) (, ",") (number_literal "0") () ")"))) (; ";")) (} "}"))) (expression_statement "bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);" (assignment_expression "bVar3 = *(byte *)((int)pppppuVar15 + 0x318d)" (identifier "bVar3") (= "=") (pointer_expression "*(byte *)((int)pppppuVar15 + 0x318d)" (* "*") (cast_expression "(byte *)((int)pppppuVar15 + 0x318d)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppuVar15 + 0x318d)" (( "(") (binary_expression "(int)pppppuVar15 + 0x318d" (cast_expression "(int)pppppuVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppuVar15")) (+ "+") (number_literal "0x318d")) () ")"))))) (; ";")) (expression_statement "pppppppuVar29 = (uint *******)(uint)bVar3;" (assignment_expression "pppppppuVar29 = (uint *******)(uint)bVar3" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)(uint)bVar3" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (cast_expression "(uint)bVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar3")))) (; ";")) (expression_statement "local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);" (assignment_expression "local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3)" (identifier "local_140") (= "=") (cast_expression "(uint *******)CONCAT31(local_140._1_3_,bVar3)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "CONCAT31(local_140._1_3_,bVar3)" (identifier "CONCAT31") (argument_list "(local_140._1_3_,bVar3)" (( "(") (field_expression "local_140._1_3_" (identifier "local_140") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "bVar3") () ")"))))) (; ";")) (if_statement "if (bVar3 == 0) {\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }" (if "if") (parenthesized_expression "(bVar3 == 0)" (( "(") (binary_expression "bVar3 == 0" (identifier "bVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);\n    }" ({ "{") (expression_statement "bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);" (assignment_expression "bVar3 = *(byte *)((int)pppppuVar15 + 0x3095)" (identifier "bVar3") (= "=") (pointer_expression "*(byte *)((int)pppppuVar15 + 0x3095)" (* "*") (cast_expression "(byte *)((int)pppppuVar15 + 0x3095)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppuVar15 + 0x3095)" (( "(") (binary_expression "(int)pppppuVar15 + 0x3095" (cast_expression "(int)pppppuVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppuVar15")) (+ "+") (number_literal "0x3095")) () ")"))))) (; ";")) (} "}"))) (expression_statement "local_14c = CONCAT31(local_14c._1_3_,bVar3);" (assignment_expression "local_14c = CONCAT31(local_14c._1_3_,bVar3)" (identifier "local_14c") (= "=") (call_expression "CONCAT31(local_14c._1_3_,bVar3)" (identifier "CONCAT31") (argument_list "(local_14c._1_3_,bVar3)" (( "(") (field_expression "local_14c._1_3_" (identifier "local_14c") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "bVar3") () ")")))) (; ";")) (expression_statement "local_e0 = (uint *******)0x0;" (assignment_expression "local_e0 = (uint *******)0x0" (identifier "local_e0") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_dc = (uint *******)0x0;" (assignment_expression "local_dc = (uint *******)0x0" (identifier "local_dc") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_d8 = (uint *******)0x0;" (assignment_expression "local_d8 = (uint *******)0x0" (identifier "local_d8") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_d4 = (int *)0x0;" (assignment_expression "local_d4 = (int *)0x0" (identifier "local_d4") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_d0 = (int *)0x0;" (assignment_expression "local_d0 = (int *)0x0" (identifier "local_d0") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_cc = (int *)0x0;" (assignment_expression "local_cc = (int *)0x0" (identifier "local_cc") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_c8 = (int *)0x0;" (assignment_expression "local_c8 = (int *)0x0" (identifier "local_c8") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_c4 = (int *)0x0;" (assignment_expression "local_c4 = (int *)0x0" (identifier "local_c4") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_c0 = (int *)0x0;" (assignment_expression "local_c0 = (int *)0x0" (identifier "local_c0") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_bc = (int *)0x0;" (assignment_expression "local_bc = (int *)0x0" (identifier "local_bc") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_b8 = (int *)0x0;" (assignment_expression "local_b8 = (int *)0x0" (identifier "local_b8") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_b4 = (int *)0x0;" (assignment_expression "local_b4 = (int *)0x0" (identifier "local_b4") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_f0 = (uint *******)0x1;" (assignment_expression "local_f0 = (uint *******)0x1" (identifier "local_f0") (= "=") (cast_expression "(uint *******)0x1" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (if_statement "if (local_130 < (uint *******)0x2) {\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }\n    else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }" (if "if") (parenthesized_expression "(local_130 < (uint *******)0x2)" (( "(") (binary_expression "local_130 < (uint *******)0x2" (identifier "local_130") (< "<") (cast_expression "(uint *******)0x2" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x2"))) () ")")) (compound_statement "{\n      local_16c = (uint *******)0x0;\n      local_168 = 0;\n      pppppppuVar28 = local_134;\nLAB_000a2740:\n      local_134 = pppppppuVar28;\n      if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }\n      if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }\n      pppppppuVar22 = local_120;\n      if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }\n      pppppppuVar22 = local_120;\n      if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }\n      if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }\n    }" ({ "{") (expression_statement "local_16c = (uint *******)0x0;" (assignment_expression "local_16c = (uint *******)0x0" (identifier "local_16c") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_168 = 0;" (assignment_expression "local_168 = 0" (identifier "local_168") (= "=") (number_literal "0")) (; ";")) (expression_statement "pppppppuVar28 = local_134;" (assignment_expression "pppppppuVar28 = local_134" (identifier "pppppppuVar28") (= "=") (identifier "local_134")) (; ";")) (labeled_statement "LAB_000a2740:\n      local_134 = pppppppuVar28;" (statement_identifier "LAB_000a2740") (: ":") (expression_statement "local_134 = pppppppuVar28;" (assignment_expression "local_134 = pppppppuVar28" (identifier "local_134") (= "=") (identifier "pppppppuVar28")) (; ";"))) (if_statement "if (local_135 == '\0') {\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }" (if "if") (parenthesized_expression "(local_135 == '\0')" (( "(") (binary_expression "local_135 == '\0'" (identifier "local_135") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        *(uint ********)(puVar24 + -0xc) = param_1;\n        *(int *)(puVar24 + -0x10) = param_3;\n        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;\n        FUN_0007bc30();\n        uVar10 = (uint)local_137;\n        *(uint ********)(puVar24 + -0x10) = param_1;\n        *(uint *)(puVar24 + -0x14) = local_168;\n        *(uint ********)(puVar24 + -0x18) = local_16c;\n        *(uint *)(puVar24 + -0x1c) = uVar10;\n        *(int *)(puVar24 + -0x20) = param_3;\n        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;\n        FUN_0007bb30();\n        pppppppuVar29 = extraout_ECX_02;\n      }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -0xc) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x10) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x10) = param_3" (pointer_expression "*(int *)(puVar24 + -0x10)" (* "*") (cast_expression "(int *)(puVar24 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa275f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa275f" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa275f")) (; ";")) (expression_statement "FUN_0007bc30();" (call_expression "FUN_0007bc30()" (identifier "FUN_0007bc30") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar10 = (uint)local_137;" (assignment_expression "uVar10 = (uint)local_137" (identifier "uVar10") (= "=") (cast_expression "(uint)local_137" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_137"))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(uint *)(puVar24 + -0x14) = local_168;" (assignment_expression "*(uint *)(puVar24 + -0x14) = local_168" (pointer_expression "*(uint *)(puVar24 + -0x14)" (* "*") (cast_expression "(uint *)(puVar24 + -0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_168")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x18) = local_16c;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_16c" (pointer_expression "*(uint ********)(puVar24 + -0x18)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x18)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_16c")) (; ";")) (expression_statement "*(uint *)(puVar24 + -0x1c) = uVar10;" (assignment_expression "*(uint *)(puVar24 + -0x1c) = uVar10" (pointer_expression "*(uint *)(puVar24 + -0x1c)" (* "*") (cast_expression "(uint *)(puVar24 + -0x1c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x1c)" (( "(") (binary_expression "puVar24 + -0x1c" (identifier "puVar24") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x20) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x20) = param_3" (pointer_expression "*(int *)(puVar24 + -0x20)" (* "*") (cast_expression "(int *)(puVar24 + -0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x20)" (( "(") (binary_expression "puVar24 + -0x20" (identifier "puVar24") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x24) = 0xa277f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x24) = 0xa277f" (pointer_expression "*(undefined4 *)(puVar24 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x24)" (( "(") (binary_expression "puVar24 + -0x24" (identifier "puVar24") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0xa277f")) (; ";")) (expression_statement "FUN_0007bb30();" (call_expression "FUN_0007bb30()" (identifier "FUN_0007bb30") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_02;" (assignment_expression "pppppppuVar29 = extraout_ECX_02" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_02")) (; ";")) (} "}"))) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";")) (if_statement "if (local_136 == '\0') {\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }\n      else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" (if "if") (parenthesized_expression "(local_136 == '\0')" (( "(") (binary_expression "local_136 == '\0'" (identifier "local_136") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }\n      }" ({ "{") (if_statement "if (local_d0 != local_d4) {\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }" (if "if") (parenthesized_expression "(local_d0 != local_d4)" (( "(") (binary_expression "local_d0 != local_d4" (identifier "local_d0") (!= "!=") (identifier "local_d4")) () ")")) (compound_statement "{\n          local_178 = (uint *******)&local_84;\n          piVar11 = local_d4;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);\n        }" ({ "{") (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" (identifier "local_178") (= "=") (cast_expression "(uint *******)&local_84" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&local_84" (& "&") (identifier "local_84")))) (; ";")) (expression_statement "piVar11 = local_d4;" (assignment_expression "piVar11 = local_d4" (identifier "piVar11") (= "=") (identifier "local_d4")) (; ";")) (do_statement "do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          } while (local_d0 != piVar11);" (do "do") (compound_statement "{\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];\n            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);\n            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];\n            *(uint ********)(puVar24 + -0x14) = local_178;\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(uint *******)(puVar24 + -0x1c) = local_188;\n            *(uint *******)(puVar24 + -0x20) = local_180;\n            *(uint ********)(puVar24 + -0x24) = local_17c;\n            *(uint *******)(puVar24 + -0x28) = local_164;\n            *(int *)(puVar24 + -0x2c) = param_3;\n            *(uint ********)(puVar24 + -0x30) = param_1;\n                    \n            local_84 = pppppppuVar22;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;\n            FUN_00096690();\n            piVar11 = piVar11 + 1;\n            pppppppuVar29 = extraout_ECX_13;\n          }" ({ "{") (expression_statement "iVar19 = *piVar11;" (assignment_expression "iVar19 = *piVar11" (identifier "iVar19") (= "=") (pointer_expression "*piVar11" (* "*") (identifier "piVar11"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (subscript_expression "local_15c[iVar19]" (identifier "local_15c") ([ "[") (identifier "iVar19") (] "]"))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);" (assignment_expression "pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)(local_160 + iVar19 * 0x10)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(local_160 + iVar19 * 0x10)" (( "(") (binary_expression "local_160 + iVar19 * 0x10" (identifier "local_160") (+ "+") (binary_expression "iVar19 * 0x10" (identifier "iVar19") (* "*") (number_literal "0x10"))) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = local_158[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "local_158[iVar19]" (identifier "local_158") ([ "[") (identifier "iVar19") (] "]"))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_178")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x18) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x18) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x18)" (* "*") (cast_expression "(int *)(puVar24 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "*(uint *******)(puVar24 + -0x1c) = local_188;" (assignment_expression "*(uint *******)(puVar24 + -0x1c) = local_188" (pointer_expression "*(uint *******)(puVar24 + -0x1c)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x1c)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x1c)" (( "(") (binary_expression "puVar24 + -0x1c" (identifier "puVar24") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_188")) (; ";")) (expression_statement "*(uint *******)(puVar24 + -0x20) = local_180;" (assignment_expression "*(uint *******)(puVar24 + -0x20) = local_180" (pointer_expression "*(uint *******)(puVar24 + -0x20)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x20)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x20)" (( "(") (binary_expression "puVar24 + -0x20" (identifier "puVar24") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_180")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x24) = local_17c;" (assignment_expression "*(uint ********)(puVar24 + -0x24) = local_17c" (pointer_expression "*(uint ********)(puVar24 + -0x24)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x24)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x24)" (( "(") (binary_expression "puVar24 + -0x24" (identifier "puVar24") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "local_17c")) (; ";")) (expression_statement "*(uint *******)(puVar24 + -0x28) = local_164;" (assignment_expression "*(uint *******)(puVar24 + -0x28) = local_164" (pointer_expression "*(uint *******)(puVar24 + -0x28)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x28)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x28)" (( "(") (binary_expression "puVar24 + -0x28" (identifier "puVar24") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (identifier "local_164")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x2c) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x2c) = param_3" (pointer_expression "*(int *)(puVar24 + -0x2c)" (* "*") (cast_expression "(int *)(puVar24 + -0x2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x2c)" (( "(") (binary_expression "puVar24 + -0x2c" (identifier "puVar24") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x30) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x30) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x30)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x30)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x30)" (( "(") (binary_expression "puVar24 + -0x30" (identifier "puVar24") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "local_84 = pppppppuVar22;" (assignment_expression "local_84 = pppppppuVar22" (identifier "local_84") (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa374f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa374f" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x34)" (( "(") (binary_expression "puVar24 + -0x34" (identifier "puVar24") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0xa374f")) (; ";")) (expression_statement "FUN_00096690();" (call_expression "FUN_00096690()" (identifier "FUN_00096690") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "piVar11 = piVar11 + 1;" (assignment_expression "piVar11 = piVar11 + 1" (identifier "piVar11") (= "=") (binary_expression "piVar11 + 1" (identifier "piVar11") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_13;" (assignment_expression "pppppppuVar29 = extraout_ECX_13" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_13")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_d0 != piVar11)" (( "(") (binary_expression "local_d0 != piVar11" (identifier "local_d0") (!= "!=") (identifier "piVar11")) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" (else "else") (if_statement "if (local_d0 != local_d4) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" (if "if") (parenthesized_expression "(local_d0 != local_d4)" (( "(") (binary_expression "local_d0 != local_d4" (identifier "local_d0") (!= "!=") (identifier "local_d4")) () ")")) (compound_statement "{\n        *(uint ********)(puVar24 + -4) = pppppppuVar27;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x751;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;\n        FUN_0005f0b0();\n      }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar24 + -4)" (* "*") (cast_expression "(uint ********)(puVar24 + -4)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pppppppuVar27")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" (* "*") (cast_expression "(uint ********)(puVar24 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "pppppppuVar22 + -0x373b3" (identifier "pppppppuVar22") (+ "+") (number_literal "-0x373b3"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x751;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x751" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x751")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "pppppppuVar22 + -0x375d2" (identifier "pppppppuVar22") (+ "+") (number_literal "-0x375d2"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa44e7;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa44e7" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa44e7")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))))) (if_statement "if ((char)local_14c != '\0') {\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }" (if "if") (parenthesized_expression "((char)local_14c != '\0')" (( "(") (binary_expression "(char)local_14c != '\0'" (cast_expression "(char)local_14c" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_14c")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        ppppppuVar21 = param_1[10];\n        *(undefined4 *)(puVar24 + -0x10) = 0xc;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;\n        ppppppuVar17 = (uint ******)FUN_0017ebf0();\n        *ppppppuVar17 = (uint *****)0x0;\n        ppppppuVar17[1] = (uint *****)0x0;\n        ppppppuVar17[2] = (uint *****)0x0;\n        if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }\n        ppppppuVar17[1] = pppppuVar15;\n        param_1[0x11] = ppppppuVar17;\n      }" ({ "{") (expression_statement "ppppppuVar21 = param_1[10];" (assignment_expression "ppppppuVar21 = param_1[10]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0xc;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0xc" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0xc")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa41d3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa41d3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa41d3")) (; ";")) (expression_statement "ppppppuVar17 = (uint ******)FUN_0017ebf0();" (assignment_expression "ppppppuVar17 = (uint ******)FUN_0017ebf0()" (identifier "ppppppuVar17") (= "=") (cast_expression "(uint ******)FUN_0017ebf0()" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (call_expression "FUN_0017ebf0()" (identifier "FUN_0017ebf0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*ppppppuVar17 = (uint *****)0x0;" (assignment_expression "*ppppppuVar17 = (uint *****)0x0" (pointer_expression "*ppppppuVar17" (* "*") (identifier "ppppppuVar17")) (= "=") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppppuVar17[1] = (uint *****)0x0;" (assignment_expression "ppppppuVar17[1] = (uint *****)0x0" (subscript_expression "ppppppuVar17[1]" (identifier "ppppppuVar17") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppppuVar17[2] = (uint *****)0x0;" (assignment_expression "ppppppuVar17[2] = (uint *****)0x0" (subscript_expression "ppppppuVar17[2]" (identifier "ppppppuVar17") ([ "[") (number_literal "2") (] "]")) (= "=") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (ppppppuVar21 == (uint ******)0x0) {\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }\n        else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }" (if "if") (parenthesized_expression "(ppppppuVar21 == (uint ******)0x0)" (( "(") (binary_expression "ppppppuVar21 == (uint ******)0x0" (identifier "ppppppuVar21") (== "==") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          pppppuVar15 = (uint *****)0x0;\n          pppppppuVar29 = extraout_ECX_27;\n        }" ({ "{") (expression_statement "pppppuVar15 = (uint *****)0x0;" (assignment_expression "pppppuVar15 = (uint *****)0x0" (identifier "pppppuVar15") (= "=") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_27;" (assignment_expression "pppppppuVar29 = extraout_ECX_27" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_27")) (; ";")) (} "}")) (else_clause "else {\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }" (else "else") (compound_statement "{\n          if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }\n          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;\n                    \n          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;\n          pppppuVar18 = (uint *****)FUN_0017ebf0();\n          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;\n          *ppppppuVar17 = pppppuVar18;\n          ppppppuVar17[2] = pppppuVar15;\n          do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);\n        }" ({ "{") (if_statement "if ((uint ******)0x3fffffff < ppppppuVar21) {\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }" (if "if") (parenthesized_expression "((uint ******)0x3fffffff < ppppppuVar21)" (( "(") (binary_expression "(uint ******)0x3fffffff < ppppppuVar21" (cast_expression "(uint ******)0x3fffffff" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x3fffffff")) (< "<") (identifier "ppppppuVar21")) () ")")) (compound_statement "{\n                    \n                    \n            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;\n            FUN_001c5fe0();\n          }" ({ "{") (expression_statement "*(undefined1 **)(puVar24 + -4) = &LAB_000a4530;" (assignment_expression "*(undefined1 **)(puVar24 + -4) = &LAB_000a4530" (pointer_expression "*(undefined1 **)(puVar24 + -4)" (* "*") (cast_expression "(undefined1 **)(puVar24 + -4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (pointer_expression "&LAB_000a4530" (& "&") (identifier "LAB_000a4530"))) (; ";")) (expression_statement "FUN_001c5fe0();" (call_expression "FUN_001c5fe0()" (identifier "FUN_001c5fe0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "*(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;" (assignment_expression "*(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4" (pointer_expression "*(int *)(puVar24 + -0x10)" (* "*") (cast_expression "(int *)(puVar24 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "(int)ppppppuVar21 * 4" (cast_expression "(int)ppppppuVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar21")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4212;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4212" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa4212")) (; ";")) (expression_statement "pppppuVar18 = (uint *****)FUN_0017ebf0();" (assignment_expression "pppppuVar18 = (uint *****)FUN_0017ebf0()" (identifier "pppppuVar18") (= "=") (cast_expression "(uint *****)FUN_0017ebf0()" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (call_expression "FUN_0017ebf0()" (identifier "FUN_0017ebf0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;" (assignment_expression "pppppuVar15 = pppppuVar18 + (int)ppppppuVar21" (identifier "pppppuVar15") (= "=") (binary_expression "pppppuVar18 + (int)ppppppuVar21" (identifier "pppppuVar18") (+ "+") (cast_expression "(int)ppppppuVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar21")))) (; ";")) (expression_statement "*ppppppuVar17 = pppppuVar18;" (assignment_expression "*ppppppuVar17 = pppppuVar18" (pointer_expression "*ppppppuVar17" (* "*") (identifier "ppppppuVar17")) (= "=") (identifier "pppppuVar18")) (; ";")) (expression_statement "ppppppuVar17[2] = pppppuVar15;" (assignment_expression "ppppppuVar17[2] = pppppuVar15" (subscript_expression "ppppppuVar17[2]" (identifier "ppppppuVar17") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "pppppuVar15")) (; ";")) (do_statement "do {\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          } while (pppppuVar15 != pppppuVar18);" (do "do") (compound_statement "{\n            *pppppuVar18 = (uint ****)0x0;\n            pppppuVar18 = pppppuVar18 + 1;\n            pppppppuVar29 = extraout_ECX_28;\n          }" ({ "{") (expression_statement "*pppppuVar18 = (uint ****)0x0;" (assignment_expression "*pppppuVar18 = (uint ****)0x0" (pointer_expression "*pppppuVar18" (* "*") (identifier "pppppuVar18")) (= "=") (cast_expression "(uint ****)0x0" (( "(") (type_descriptor "uint ****" (type_identifier "uint") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppuVar18 = pppppuVar18 + 1;" (assignment_expression "pppppuVar18 = pppppuVar18 + 1" (identifier "pppppuVar18") (= "=") (binary_expression "pppppuVar18 + 1" (identifier "pppppuVar18") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_28;" (assignment_expression "pppppppuVar29 = extraout_ECX_28" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_28")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pppppuVar15 != pppppuVar18)" (( "(") (binary_expression "pppppuVar15 != pppppuVar18" (identifier "pppppuVar15") (!= "!=") (identifier "pppppuVar18")) () ")")) (; ";")) (} "}")))) (expression_statement "ppppppuVar17[1] = pppppuVar15;" (assignment_expression "ppppppuVar17[1] = pppppuVar15" (subscript_expression "ppppppuVar17[1]" (identifier "ppppppuVar17") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "pppppuVar15")) (; ";")) (expression_statement "param_1[0x11] = ppppppuVar17;" (assignment_expression "param_1[0x11] = ppppppuVar17" (subscript_expression "param_1[0x11]" (identifier "param_1") ([ "[") (number_literal "0x11") (] "]")) (= "=") (identifier "ppppppuVar17")) (; ";")) (} "}"))) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";")) (if_statement "if (local_138 == '\0') {\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }\n      else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" (if "if") (parenthesized_expression "(local_138 == '\0')" (( "(") (binary_expression "local_138 == '\0'" (identifier "local_138") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }\n      }" ({ "{") (if_statement "if (local_e0 != local_dc) {\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }" (if "if") (parenthesized_expression "(local_e0 != local_dc)" (( "(") (binary_expression "local_e0 != local_dc" (identifier "local_e0") (!= "!=") (identifier "local_dc")) () ")")) (compound_statement "{\n          local_12c = local_e0;\n          local_134 = param_1 + 0x24;\n          local_13c = (uint *******)&local_9c;\n          do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);\n        }" ({ "{") (expression_statement "local_12c = local_e0;" (assignment_expression "local_12c = local_e0" (identifier "local_12c") (= "=") (identifier "local_e0")) (; ";")) (expression_statement "local_134 = param_1 + 0x24;" (assignment_expression "local_134 = param_1 + 0x24" (identifier "local_134") (= "=") (binary_expression "param_1 + 0x24" (identifier "param_1") (+ "+") (number_literal "0x24"))) (; ";")) (expression_statement "local_13c = (uint *******)&local_9c;" (assignment_expression "local_13c = (uint *******)&local_9c" (identifier "local_13c") (= "=") (cast_expression "(uint *******)&local_9c" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&local_9c" (& "&") (identifier "local_9c")))) (; ";")) (do_statement "do {\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          } while (local_dc != local_12c);" (do "do") (compound_statement "{\n            pppppppuVar22 = (uint *******)*local_12c;\n            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);\n            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];\n            local_9c = pppppppuVar28;\n            if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }\n            pppppppuVar32 = local_120;\n            if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }\n            local_12c = local_12c + 1;\n          }" ({ "{") (expression_statement "pppppppuVar22 = (uint *******)*local_12c;" (assignment_expression "pppppppuVar22 = (uint *******)*local_12c" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)*local_12c" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*local_12c" (* "*") (identifier "local_12c")))) (; ";")) (expression_statement "pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);" (assignment_expression "pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10)" (identifier "pppppppuVar28") (= "=") (cast_expression "(uint *******)(local_160 + (int)pppppppuVar22 * 0x10)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(local_160 + (int)pppppppuVar22 * 0x10)" (( "(") (binary_expression "local_160 + (int)pppppppuVar22 * 0x10" (identifier "local_160") (+ "+") (binary_expression "(int)pppppppuVar22 * 0x10" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (* "*") (number_literal "0x10"))) () ")")))) (; ";")) (expression_statement "pppppppuVar27 = (uint *******)pppppppuVar28[0xb];" (assignment_expression "pppppppuVar27 = (uint *******)pppppppuVar28[0xb]" (identifier "pppppppuVar27") (= "=") (cast_expression "(uint *******)pppppppuVar28[0xb]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppuVar28[0xb]" (identifier "pppppppuVar28") ([ "[") (number_literal "0xb") (] "]")))) (; ";")) (expression_statement "local_9c = pppppppuVar28;" (assignment_expression "local_9c = pppppppuVar28" (identifier "local_9c") (= "=") (identifier "pppppppuVar28")) (; ";")) (if_statement "if ((uint *******)0xfeff < pppppppuVar27) {\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }" (if "if") (parenthesized_expression "((uint *******)0xfeff < pppppppuVar27)" (( "(") (binary_expression "(uint *******)0xfeff < pppppppuVar27" (cast_expression "(uint *******)0xfeff" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xfeff")) (< "<") (identifier "pppppppuVar27")) () ")")) (compound_statement "{\n              *(uint ********)(puVar24 + -0x10) = local_134;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;\n              FUN_0004dee0();\n              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);\n              pppppppuVar29 = extraout_ECX_17;\n            }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -0x10) = local_134;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_134" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_134")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3ae3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3ae3")) (; ";")) (expression_statement "FUN_0004dee0();" (call_expression "FUN_0004dee0()" (identifier "FUN_0004dee0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);" (assignment_expression "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29])" (identifier "pppppppuVar27") (= "=") (cast_expression "(uint *******)((int)pppppppuVar27 + (int)param_1[0x29])" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar27 + (int)param_1[0x29])" (( "(") (binary_expression "(int)pppppppuVar27 + (int)param_1[0x29]" (cast_expression "(int)pppppppuVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar27")) (+ "+") (cast_expression "(int)param_1[0x29]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0x29]" (identifier "param_1") ([ "[") (number_literal "0x29") (] "]")))) () ")")))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_17;" (assignment_expression "pppppppuVar29 = extraout_ECX_17" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_17")) (; ";")) (} "}"))) (expression_statement "pppppppuVar32 = local_120;" (assignment_expression "pppppppuVar32 = local_120" (identifier "pppppppuVar32") (= "=") (identifier "local_120")) (; ";")) (if_statement "if (pppppppuVar27 < local_130) {\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }" (if "if") (parenthesized_expression "(pppppppuVar27 < local_130)" (( "(") (binary_expression "pppppppuVar27 < local_130" (identifier "pppppppuVar27") (< "<") (identifier "local_130")) () ")")) (compound_statement "{\n              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];\n              if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }\n            }" ({ "{") (expression_statement "local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];" (assignment_expression "local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27]" (identifier "local_124") (= "=") (cast_expression "(uint *******)param_1[0xe][(int)pppppppuVar27]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[0xe][(int)pppppppuVar27]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)pppppppuVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar27")) (] "]")))) (; ";")) (if_statement "if (local_124 == (uint *******)0x2) {\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }\n              else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" (if "if") (parenthesized_expression "(local_124 == (uint *******)0x2)" (( "(") (binary_expression "local_124 == (uint *******)0x2" (identifier "local_124") (== "==") (cast_expression "(uint *******)0x2" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x2"))) () ")")) (compound_statement "{\n                if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }\n              }" ({ "{") (if_statement "if (local_135 == '\0') {\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }" (if "if") (parenthesized_expression "(local_135 == '\0')" (( "(") (binary_expression "local_135 == '\0'" (identifier "local_135") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);\n                  local_140 = (uint *******)local_9c[1];\n                  local_194 = local_7c;\n                  local_84 = local_7c;\n                  puVar16 = (undefined *)0xffffffff;\n                  local_124 = param_1 + 0x4b;\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }\n                  *(undefined4 *)(puVar24 + -4) = 0;\n                  *(undefined **)(puVar24 + -8) = puVar16;\n                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                  *(uint *********)(puVar24 + -0x10) = &local_84;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;\n                  FUN_0004cf80();\n                  local_68 = 0;\n                  local_64 = (uint *******)0x0;\n                  local_60 = *pppppppuVar28;\n                  local_58 = pppppppuVar28[2];\n                  local_54 = pppppppuVar28[3];\n                  local_50 = pppppppuVar28[4];\n                  local_4c = pppppppuVar28[5];\n                  local_48 = pppppppuVar28[6];\n                  local_44 = pppppppuVar28[7];\n                  local_40 = pppppppuVar28[8];\n                  local_3c = pppppppuVar28[9];\n                  local_38 = pppppppuVar28[10];\n                  local_34 = pppppppuVar28[0xb];\n                  local_30 = pppppppuVar28[0xc];\n                  local_2c = pppppppuVar28[0xd];\n                  local_28 = pppppppuVar28[0xe];\n                  ppppppuVar21 = pppppppuVar28[0xf];\n                  local_6c = pppppppuVar22;\n                  *(uint *********)(puVar24 + -0xc) = &local_84;\n                  *(uint ********)(puVar24 + -0x10) = local_124;\n                  local_5c = local_140;\n                    \n                  local_24 = ppppppuVar21;\n                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;\n                  FUN_000a10f0();\n                  pppppppuVar29 = extraout_ECX_18;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }\n                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;\n                  ppppppuVar21 = param_1[0x21];\n                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                }" ({ "{") (expression_statement "ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);" (assignment_expression "ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c)" (identifier "ppppppuVar21") (= "=") (cast_expression "(uint ******)((int)local_144 + (int)*local_9c)" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)local_144 + (int)*local_9c)" (( "(") (binary_expression "(int)local_144 + (int)*local_9c" (cast_expression "(int)local_144" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_144")) (+ "+") (cast_expression "(int)*local_9c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*local_9c" (* "*") (identifier "local_9c")))) () ")")))) (; ";")) (expression_statement "local_140 = (uint *******)local_9c[1];" (assignment_expression "local_140 = (uint *******)local_9c[1]" (identifier "local_140") (= "=") (cast_expression "(uint *******)local_9c[1]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_9c[1]" (identifier "local_9c") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "local_194 = local_7c;" (assignment_expression "local_194 = local_7c" (identifier "local_194") (= "=") (identifier "local_7c")) (; ";")) (expression_statement "local_84 = local_7c;" (assignment_expression "local_84 = local_7c" (identifier "local_84") (= "=") (identifier "local_7c")) (; ";")) (expression_statement "puVar16 = (undefined *)0xffffffff;" (assignment_expression "puVar16 = (undefined *)0xffffffff" (identifier "puVar16") (= "=") (cast_expression "(undefined *)0xffffffff" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "local_124 = param_1 + 0x4b;" (assignment_expression "local_124 = param_1 + 0x4b" (identifier "local_124") (= "=") (binary_expression "param_1 + 0x4b" (identifier "param_1") (+ "+") (number_literal "0x4b"))) (; ";")) (if_statement "if (ppppppuVar21 != (uint ******)0x0) {\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }" (if "if") (parenthesized_expression "(ppppppuVar21 != (uint ******)0x0)" (( "(") (binary_expression "ppppppuVar21 != (uint ******)0x0" (identifier "ppppppuVar21") (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    local_148 = ppppppuVar21;\n                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;\n                    sVar9 = strlen(*(char **)(puVar24 + -0x10));\n                    puVar16 = (undefined *)(sVar9 + (int)local_148);\n                    ppppppuVar21 = local_148;\n                  }" ({ "{") (expression_statement "local_148 = ppppppuVar21;" (assignment_expression "local_148 = ppppppuVar21" (identifier "local_148") (= "=") (identifier "ppppppuVar21")) (; ";")) (expression_statement "*(uint *******)(puVar24 + -0x10) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar24 + -0x10) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar24 + -0x10)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x10)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "ppppppuVar21")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3b4f" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3b4f")) (; ";")) (expression_statement "sVar9 = strlen(*(char **)(puVar24 + -0x10));" (assignment_expression "sVar9 = strlen(*(char **)(puVar24 + -0x10))" (identifier "sVar9") (= "=") (call_expression "strlen(*(char **)(puVar24 + -0x10))" (identifier "strlen") (argument_list "(*(char **)(puVar24 + -0x10))" (( "(") (pointer_expression "*(char **)(puVar24 + -0x10)" (* "*") (cast_expression "(char **)(puVar24 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) () ")")))) (; ";")) (expression_statement "puVar16 = (undefined *)(sVar9 + (int)local_148);" (assignment_expression "puVar16 = (undefined *)(sVar9 + (int)local_148)" (identifier "puVar16") (= "=") (cast_expression "(undefined *)(sVar9 + (int)local_148)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(sVar9 + (int)local_148)" (( "(") (binary_expression "sVar9 + (int)local_148" (identifier "sVar9") (+ "+") (cast_expression "(int)local_148" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_148"))) () ")")))) (; ";")) (expression_statement "ppppppuVar21 = local_148;" (assignment_expression "ppppppuVar21 = local_148" (identifier "ppppppuVar21") (= "=") (identifier "local_148")) (; ";")) (} "}"))) (expression_statement "*(undefined4 *)(puVar24 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar24 + -8) = puVar16;" (assignment_expression "*(undefined **)(puVar24 + -8) = puVar16" (pointer_expression "*(undefined **)(puVar24 + -8)" (* "*") (cast_expression "(undefined **)(puVar24 + -8)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "puVar16")) (; ";")) (expression_statement "*(uint *******)(puVar24 + -0xc) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar24 + -0xc) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar24 + -0xc)" (* "*") (cast_expression "(uint *******)(puVar24 + -0xc)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "ppppppuVar21")) (; ";")) (expression_statement "*(uint *********)(puVar24 + -0x10) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0x10) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint *********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_84" (& "&") (identifier "local_84"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3b67;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3b67" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3b67")) (; ";")) (expression_statement "FUN_0004cf80();" (call_expression "FUN_0004cf80()" (identifier "FUN_0004cf80") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" (identifier "local_68") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_64 = (uint *******)0x0;" (assignment_expression "local_64 = (uint *******)0x0" (identifier "local_64") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_60 = *pppppppuVar28;" (assignment_expression "local_60 = *pppppppuVar28" (identifier "local_60") (= "=") (pointer_expression "*pppppppuVar28" (* "*") (identifier "pppppppuVar28"))) (; ";")) (expression_statement "local_58 = pppppppuVar28[2];" (assignment_expression "local_58 = pppppppuVar28[2]" (identifier "local_58") (= "=") (subscript_expression "pppppppuVar28[2]" (identifier "pppppppuVar28") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "local_54 = pppppppuVar28[3];" (assignment_expression "local_54 = pppppppuVar28[3]" (identifier "local_54") (= "=") (subscript_expression "pppppppuVar28[3]" (identifier "pppppppuVar28") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "local_50 = pppppppuVar28[4];" (assignment_expression "local_50 = pppppppuVar28[4]" (identifier "local_50") (= "=") (subscript_expression "pppppppuVar28[4]" (identifier "pppppppuVar28") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "local_4c = pppppppuVar28[5];" (assignment_expression "local_4c = pppppppuVar28[5]" (identifier "local_4c") (= "=") (subscript_expression "pppppppuVar28[5]" (identifier "pppppppuVar28") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "local_48 = pppppppuVar28[6];" (assignment_expression "local_48 = pppppppuVar28[6]" (identifier "local_48") (= "=") (subscript_expression "pppppppuVar28[6]" (identifier "pppppppuVar28") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "local_44 = pppppppuVar28[7];" (assignment_expression "local_44 = pppppppuVar28[7]" (identifier "local_44") (= "=") (subscript_expression "pppppppuVar28[7]" (identifier "pppppppuVar28") ([ "[") (number_literal "7") (] "]"))) (; ";")) (expression_statement "local_40 = pppppppuVar28[8];" (assignment_expression "local_40 = pppppppuVar28[8]" (identifier "local_40") (= "=") (subscript_expression "pppppppuVar28[8]" (identifier "pppppppuVar28") ([ "[") (number_literal "8") (] "]"))) (; ";")) (expression_statement "local_3c = pppppppuVar28[9];" (assignment_expression "local_3c = pppppppuVar28[9]" (identifier "local_3c") (= "=") (subscript_expression "pppppppuVar28[9]" (identifier "pppppppuVar28") ([ "[") (number_literal "9") (] "]"))) (; ";")) (expression_statement "local_38 = pppppppuVar28[10];" (assignment_expression "local_38 = pppppppuVar28[10]" (identifier "local_38") (= "=") (subscript_expression "pppppppuVar28[10]" (identifier "pppppppuVar28") ([ "[") (number_literal "10") (] "]"))) (; ";")) (expression_statement "local_34 = pppppppuVar28[0xb];" (assignment_expression "local_34 = pppppppuVar28[0xb]" (identifier "local_34") (= "=") (subscript_expression "pppppppuVar28[0xb]" (identifier "pppppppuVar28") ([ "[") (number_literal "0xb") (] "]"))) (; ";")) (expression_statement "local_30 = pppppppuVar28[0xc];" (assignment_expression "local_30 = pppppppuVar28[0xc]" (identifier "local_30") (= "=") (subscript_expression "pppppppuVar28[0xc]" (identifier "pppppppuVar28") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "local_2c = pppppppuVar28[0xd];" (assignment_expression "local_2c = pppppppuVar28[0xd]" (identifier "local_2c") (= "=") (subscript_expression "pppppppuVar28[0xd]" (identifier "pppppppuVar28") ([ "[") (number_literal "0xd") (] "]"))) (; ";")) (expression_statement "local_28 = pppppppuVar28[0xe];" (assignment_expression "local_28 = pppppppuVar28[0xe]" (identifier "local_28") (= "=") (subscript_expression "pppppppuVar28[0xe]" (identifier "pppppppuVar28") ([ "[") (number_literal "0xe") (] "]"))) (; ";")) (expression_statement "ppppppuVar21 = pppppppuVar28[0xf];" (assignment_expression "ppppppuVar21 = pppppppuVar28[0xf]" (identifier "ppppppuVar21") (= "=") (subscript_expression "pppppppuVar28[0xf]" (identifier "pppppppuVar28") ([ "[") (number_literal "0xf") (] "]"))) (; ";")) (expression_statement "local_6c = pppppppuVar22;" (assignment_expression "local_6c = pppppppuVar22" (identifier "local_6c") (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "*(uint *********)(puVar24 + -0xc) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0xc) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint *********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "&local_84" (& "&") (identifier "local_84"))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_124")) (; ";")) (expression_statement "local_5c = local_140;" (assignment_expression "local_5c = local_140" (identifier "local_5c") (= "=") (identifier "local_140")) (; ";")) (expression_statement "local_24 = ppppppuVar21;" (assignment_expression "local_24 = ppppppuVar21" (identifier "local_24") (= "=") (identifier "ppppppuVar21")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3bee;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3bee" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3bee")) (; ";")) (expression_statement "FUN_000a10f0();" (call_expression "FUN_000a10f0()" (identifier "FUN_000a10f0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_18;" (assignment_expression "pppppppuVar29 = extraout_ECX_18" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_18")) (; ";")) (if_statement "if (local_84 != local_194) {\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }" (if "if") (parenthesized_expression "(local_84 != local_194)" (( "(") (binary_expression "local_84 != local_194" (identifier "local_84") (!= "!=") (identifier "local_194")) () ")")) (compound_statement "{\n                    *(uint ********)(puVar24 + -0x10) = local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_19;\n                  }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_84")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3c0b" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3c0b")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_19;" (assignment_expression "pppppppuVar29 = extraout_ECX_19" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_19")) (; ";")) (} "}"))) (expression_statement "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;" (assignment_expression "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2" (subscript_expression "param_1[0xe][(int)pppppppuVar22]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (] "]")) (= "=") (cast_expression "(uint *****)0x2" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x2"))) (; ";")) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]"))) (; ";")) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (* "*") (number_literal "2")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)pppppppuVar22 * 2 + 1" (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}"))) (} "}")) (else_clause "else if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" (else "else") (if_statement "if (local_124 == (uint *******)0x0) {\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }\n              else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" (if "if") (parenthesized_expression "(local_124 == (uint *******)0x0)" (( "(") (binary_expression "local_124 == (uint *******)0x0" (identifier "local_124") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n              }" ({ "{") (expression_statement "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;" (assignment_expression "param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0" (subscript_expression "param_1[0xe][(int)pppppppuVar22]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (] "]")) (= "=") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]"))) (; ";")) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (* "*") (number_literal "2")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)pppppppuVar22 * 2 + 1" (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" (else "else") (compound_statement "{\n                *(undefined4 *)(puVar24 + -0x10) = 0x14;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;\n                ppppuVar14 = (uint ****)FUN_0017ebf0();\n                *ppppuVar14 = (uint ***)0x0;\n                ppppuVar14[1] = (uint ***)0x0;\n                ppppuVar14[2] = (uint ***)0x0;\n                ppppuVar14[3] = (uint ***)0x0;\n                ppppuVar14[4] = (uint ***)0x0;\n                if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }\n                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;\n                *(uint *****)(puVar24 + -0xc) = ppppuVar14;\n                *(uint ********)(puVar24 + -0x10) = local_124;\n                *(uint ********)(puVar24 + -0x14) = local_13c;\n                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;\n                *(uint ********)(puVar24 + -0x1c) = param_1;\n                *(int *)(puVar24 + -0x20) = param_3;\n                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;\n                pppppuVar15 = (uint *****)FUN_0008a810();\n                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;\n                ppppppuVar21 = param_1[0x21];\n                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;\n                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;\n                pppppppuVar29 = extraout_ECX_16;\n              }" ({ "{") (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0x14;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0x14" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0x14")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3a12;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3a12" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3a12")) (; ";")) (expression_statement "ppppuVar14 = (uint ****)FUN_0017ebf0();" (assignment_expression "ppppuVar14 = (uint ****)FUN_0017ebf0()" (identifier "ppppuVar14") (= "=") (cast_expression "(uint ****)FUN_0017ebf0()" (( "(") (type_descriptor "uint ****" (type_identifier "uint") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (call_expression "FUN_0017ebf0()" (identifier "FUN_0017ebf0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*ppppuVar14 = (uint ***)0x0;" (assignment_expression "*ppppuVar14 = (uint ***)0x0" (pointer_expression "*ppppuVar14" (* "*") (identifier "ppppuVar14")) (= "=") (cast_expression "(uint ***)0x0" (( "(") (type_descriptor "uint ***" (type_identifier "uint") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppuVar14[1] = (uint ***)0x0;" (assignment_expression "ppppuVar14[1] = (uint ***)0x0" (subscript_expression "ppppuVar14[1]" (identifier "ppppuVar14") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(uint ***)0x0" (( "(") (type_descriptor "uint ***" (type_identifier "uint") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppuVar14[2] = (uint ***)0x0;" (assignment_expression "ppppuVar14[2] = (uint ***)0x0" (subscript_expression "ppppuVar14[2]" (identifier "ppppuVar14") ([ "[") (number_literal "2") (] "]")) (= "=") (cast_expression "(uint ***)0x0" (( "(") (type_descriptor "uint ***" (type_identifier "uint") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppuVar14[3] = (uint ***)0x0;" (assignment_expression "ppppuVar14[3] = (uint ***)0x0" (subscript_expression "ppppuVar14[3]" (identifier "ppppuVar14") ([ "[") (number_literal "3") (] "]")) (= "=") (cast_expression "(uint ***)0x0" (( "(") (type_descriptor "uint ***" (type_identifier "uint") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppuVar14[4] = (uint ***)0x0;" (assignment_expression "ppppuVar14[4] = (uint ***)0x0" (subscript_expression "ppppuVar14[4]" (identifier "ppppuVar14") ([ "[") (number_literal "4") (] "]")) (= "=") (cast_expression "(uint ***)0x0" (( "(") (type_descriptor "uint ***" (type_identifier "uint") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (param_1[10] <= pppppppuVar22) {\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }" (if "if") (parenthesized_expression "(param_1[10] <= pppppppuVar22)" (( "(") (binary_expression "param_1[10] <= pppppppuVar22" (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]")) (<= "<=") (identifier "pppppppuVar22")) () ")")) (compound_statement "{\n                  *(uint ********)(puVar24 + -4) = pppppppuVar32;\n                  pppppppuVar22 = local_120;\n                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;\n                  *(undefined4 *)(puVar24 + -0xc) = 0x541;\n                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);\n                    \n                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;\n                  FUN_0005f0b0();\n                }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar32;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar32" (pointer_expression "*(uint ********)(puVar24 + -4)" (* "*") (cast_expression "(uint ********)(puVar24 + -4)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pppppppuVar32")) (; ";")) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x37296;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x37296" (pointer_expression "*(uint ********)(puVar24 + -8)" (* "*") (cast_expression "(uint ********)(puVar24 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x37296" (identifier "local_120") (+ "+") (number_literal "-0x37296"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x541;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x541" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x541")) (; ";")) (expression_statement "*(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);" (assignment_expression "*(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6)" (pointer_expression "*(byte **)(puVar24 + -0x10)" (* "*") (cast_expression "(byte **)(puVar24 + -0x10)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (cast_expression "(byte *)((int)pppppppuVar22 + -0xe7fe6)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppuVar22 + -0xe7fe6)" (( "(") (binary_expression "(int)pppppppuVar22 + -0xe7fe6" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (+ "+") (number_literal "-0xe7fe6")) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa44c8;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa44c8" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa44c8")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "(*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;" (assignment_expression "(*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14" (subscript_expression "(*param_1[0x11])[(int)pppppppuVar22]" (parenthesized_expression "(*param_1[0x11])" (( "(") (pointer_expression "*param_1[0x11]" (* "*") (subscript_expression "param_1[0x11]" (identifier "param_1") ([ "[") (number_literal "0x11") (] "]"))) () ")")) ([ "[") (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (] "]")) (= "=") (identifier "ppppuVar14")) (; ";")) (expression_statement "*(uint *****)(puVar24 + -0xc) = ppppuVar14;" (assignment_expression "*(uint *****)(puVar24 + -0xc) = ppppuVar14" (pointer_expression "*(uint *****)(puVar24 + -0xc)" (* "*") (cast_expression "(uint *****)(puVar24 + -0xc)" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "ppppuVar14")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_124")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_13c;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_13c" (pointer_expression "*(uint ********)(puVar24 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_13c")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x18) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar24 + -0x18)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x18)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x1c) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x1c) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x1c)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x1c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x1c)" (( "(") (binary_expression "puVar24 + -0x1c" (identifier "puVar24") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x20) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x20) = param_3" (pointer_expression "*(int *)(puVar24 + -0x20)" (* "*") (cast_expression "(int *)(puVar24 + -0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x20)" (( "(") (binary_expression "puVar24 + -0x20" (identifier "puVar24") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x24) = 0xa3a70;" (assignment_expression "*(undefined4 *)(puVar24 + -0x24) = 0xa3a70" (pointer_expression "*(undefined4 *)(puVar24 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x24)" (( "(") (binary_expression "puVar24 + -0x24" (identifier "puVar24") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0xa3a70")) (; ";")) (expression_statement "pppppuVar15 = (uint *****)FUN_0008a810();" (assignment_expression "pppppuVar15 = (uint *****)FUN_0008a810()" (identifier "pppppuVar15") (= "=") (cast_expression "(uint *****)FUN_0008a810()" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (call_expression "FUN_0008a810()" (identifier "FUN_0008a810") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "param_1[0xe][(int)pppppppuVar22] = pppppuVar15;" (assignment_expression "param_1[0xe][(int)pppppppuVar22] = pppppuVar15" (subscript_expression "param_1[0xe][(int)pppppppuVar22]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (] "]")) (= "=") (identifier "pppppuVar15")) (; ";")) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]"))) (; ";")) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (* "*") (number_literal "2")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)pppppppuVar22 * 2 + 1]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)pppppppuVar22 * 2 + 1" (binary_expression "(int)pppppppuVar22 * 2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_16;" (assignment_expression "pppppppuVar29 = extraout_ECX_16" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_16")) (; ";")) (} "}")))))) (} "}"))) (expression_statement "local_12c = local_12c + 1;" (assignment_expression "local_12c = local_12c + 1" (identifier "local_12c") (= "=") (binary_expression "local_12c + 1" (identifier "local_12c") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_dc != local_12c)" (( "(") (binary_expression "local_dc != local_12c" (identifier "local_dc") (!= "!=") (identifier "local_12c")) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" (else "else") (if_statement "if (local_e0 != local_dc) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" (if "if") (parenthesized_expression "(local_e0 != local_dc)" (( "(") (binary_expression "local_e0 != local_dc" (identifier "local_e0") (!= "!=") (identifier "local_dc")) () ")")) (compound_statement "{\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x76c;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;\n        FUN_0005f0b0();\n      }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar24 + -4)" (* "*") (cast_expression "(uint ********)(puVar24 + -4)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pppppppuVar29")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" (* "*") (cast_expression "(uint ********)(puVar24 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "pppppppuVar22 + -0x373b3" (identifier "pppppppuVar22") (+ "+") (number_literal "-0x373b3"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x76c;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x76c" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x76c")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "pppppppuVar22 + -0x375d2" (identifier "pppppppuVar22") (+ "+") (number_literal "-0x375d2"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4525;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4525" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa4525")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))))) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";")) (if_statement "if (local_136 == '\0') {\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }\n      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" (if "if") (parenthesized_expression "(local_136 == '\0')" (( "(") (binary_expression "local_136 == '\0'" (identifier "local_136") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }\n        if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }\n      }" ({ "{") (if_statement "if (local_c8 != local_c4) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }" (if "if") (parenthesized_expression "(local_c8 != local_c4)" (( "(") (binary_expression "local_c8 != local_c4" (identifier "local_c8") (!= "!=") (identifier "local_c4")) () ")")) (compound_statement "{\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_c8;\n          do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);\n        }" ({ "{") (expression_statement "local_128 = 0;" (assignment_expression "local_128 = 0" (identifier "local_128") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_12c = local_17c;" (assignment_expression "local_12c = local_17c" (identifier "local_12c") (= "=") (identifier "local_17c")) (; ";")) (expression_statement "piVar11 = local_c8;" (assignment_expression "piVar11 = local_c8" (identifier "piVar11") (= "=") (identifier "local_c8")) (; ";")) (do_statement "do {\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_c4 != piVar11);" (do "do") (compound_statement "{\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 0;\n            *(int *)(puVar24 + -0x30) = param_3;\n                    \n            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          }" ({ "{") (expression_statement "iVar19 = *piVar11;" (assignment_expression "iVar19 = *piVar11" (identifier "iVar19") (= "=") (pointer_expression "*piVar11" (* "*") (identifier "piVar11"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "local_15c[iVar19]" (identifier "local_15c") ([ "[") (identifier "iVar19") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = local_158[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (subscript_expression "local_158[iVar19]" (identifier "local_158") ([ "[") (identifier "iVar19") (] "]"))) (; ";")) (expression_statement "*(int *)(puVar24 + -0x18) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x18) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x18)" (* "*") (cast_expression "(int *)(puVar24 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = local_128;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = local_128" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x1c)" (( "(") (binary_expression "puVar24 + -0x1c" (identifier "puVar24") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_128")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x20)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x20)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x20)" (( "(") (binary_expression "puVar24 + -0x20" (identifier "puVar24") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint *******)(puVar24 + -0x24) = local_164;" (assignment_expression "*(uint *******)(puVar24 + -0x24) = local_164" (pointer_expression "*(uint *******)(puVar24 + -0x24)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x24)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x24)" (( "(") (binary_expression "puVar24 + -0x24" (identifier "puVar24") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "local_164")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x28) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x28) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x28)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x28)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x28)" (( "(") (binary_expression "puVar24 + -0x28" (identifier "puVar24") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x2c) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -0x2c) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -0x2c)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x2c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x2c)" (( "(") (binary_expression "puVar24 + -0x2c" (identifier "puVar24") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x30) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x30) = param_3" (pointer_expression "*(int *)(puVar24 + -0x30)" (* "*") (cast_expression "(int *)(puVar24 + -0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x30)" (( "(") (binary_expression "puVar24 + -0x30" (identifier "puVar24") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa3cc5" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x34)" (( "(") (binary_expression "puVar24 + -0x34" (identifier "puVar24") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0xa3cc5")) (; ";")) (expression_statement "FUN_0008e680();" (call_expression "FUN_0008e680()" (identifier "FUN_0008e680") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "piVar11 = piVar11 + 1;" (assignment_expression "piVar11 = piVar11 + 1" (identifier "piVar11") (= "=") (binary_expression "piVar11 + 1" (identifier "piVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_c4 != piVar11)" (( "(") (binary_expression "local_c4 != piVar11" (identifier "local_c4") (!= "!=") (identifier "piVar11")) () ")")) (; ";")) (} "}"))) (if_statement "if (local_b8 != local_bc) {\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }" (if "if") (parenthesized_expression "(local_b8 != local_bc)" (( "(") (binary_expression "local_b8 != local_bc" (identifier "local_b8") (!= "!=") (identifier "local_bc")) () ")")) (compound_statement "{\n          local_128 = 0;\n          local_12c = local_17c;\n          piVar11 = local_bc;\n          do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);\n        }" ({ "{") (expression_statement "local_128 = 0;" (assignment_expression "local_128 = 0" (identifier "local_128") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_12c = local_17c;" (assignment_expression "local_12c = local_17c" (identifier "local_12c") (= "=") (identifier "local_17c")) (; ";")) (expression_statement "piVar11 = local_bc;" (assignment_expression "piVar11 = local_bc" (identifier "piVar11") (= "=") (identifier "local_bc")) (; ";")) (do_statement "do {\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          } while (local_b8 != piVar11);" (do "do") (compound_statement "{\n            puVar8 = local_158;\n            iVar19 = *piVar11;\n            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];\n            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];\n            *(int *)(puVar24 + -0x18) = iVar19;\n            *(undefined4 *)(puVar24 + -0x1c) = local_128;\n            *(uint ********)(puVar24 + -0x20) = local_12c;\n            *(uint *******)(puVar24 + -0x24) = local_164;\n            *(uint ********)(puVar24 + -0x28) = param_1;\n            *(undefined4 *)(puVar24 + -0x2c) = 1;\n            *(int *)(puVar24 + -0x30) = param_3;\n            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;\n            FUN_0008e680();\n            piVar11 = piVar11 + 1;\n          }" ({ "{") (expression_statement "puVar8 = local_158;" (assignment_expression "puVar8 = local_158" (identifier "puVar8") (= "=") (identifier "local_158")) (; ";")) (expression_statement "iVar19 = *piVar11;" (assignment_expression "iVar19 = *piVar11" (identifier "iVar19") (= "=") (pointer_expression "*piVar11" (* "*") (identifier "piVar11"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "local_15c[iVar19]" (identifier "local_15c") ([ "[") (identifier "iVar19") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19]" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (subscript_expression "puVar8[iVar19]" (identifier "puVar8") ([ "[") (identifier "iVar19") (] "]"))) (; ";")) (expression_statement "*(int *)(puVar24 + -0x18) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x18) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x18)" (* "*") (cast_expression "(int *)(puVar24 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = local_128;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = local_128" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x1c)" (( "(") (binary_expression "puVar24 + -0x1c" (identifier "puVar24") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_128")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x20)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x20)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x20)" (( "(") (binary_expression "puVar24 + -0x20" (identifier "puVar24") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint *******)(puVar24 + -0x24) = local_164;" (assignment_expression "*(uint *******)(puVar24 + -0x24) = local_164" (pointer_expression "*(uint *******)(puVar24 + -0x24)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x24)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x24)" (( "(") (binary_expression "puVar24 + -0x24" (identifier "puVar24") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "local_164")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x28) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x28) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x28)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x28)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x28)" (( "(") (binary_expression "puVar24 + -0x28" (identifier "puVar24") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x2c) = 1;" (assignment_expression "*(undefined4 *)(puVar24 + -0x2c) = 1" (pointer_expression "*(undefined4 *)(puVar24 + -0x2c)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x2c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x2c)" (( "(") (binary_expression "puVar24 + -0x2c" (identifier "puVar24") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x30) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x30) = param_3" (pointer_expression "*(int *)(puVar24 + -0x30)" (* "*") (cast_expression "(int *)(puVar24 + -0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x30)" (( "(") (binary_expression "puVar24 + -0x30" (identifier "puVar24") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa3d3d" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x34)" (( "(") (binary_expression "puVar24 + -0x34" (identifier "puVar24") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0xa3d3d")) (; ";")) (expression_statement "FUN_0008e680();" (call_expression "FUN_0008e680()" (identifier "FUN_0008e680") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "piVar11 = piVar11 + 1;" (assignment_expression "piVar11 = piVar11 + 1" (identifier "piVar11") (= "=") (binary_expression "piVar11 + 1" (identifier "piVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_b8 != piVar11)" (( "(") (binary_expression "local_b8 != piVar11" (identifier "local_b8") (!= "!=") (identifier "piVar11")) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" (else "else") (if_statement "if ((local_c8 != local_c4) || (local_b8 != local_bc)) {\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" (if "if") (parenthesized_expression "((local_c8 != local_c4) || (local_b8 != local_bc))" (( "(") (binary_expression "(local_c8 != local_c4) || (local_b8 != local_bc)" (parenthesized_expression "(local_c8 != local_c4)" (( "(") (binary_expression "local_c8 != local_c4" (identifier "local_c8") (!= "!=") (identifier "local_c4")) () ")")) (|| "||") (parenthesized_expression "(local_b8 != local_bc)" (( "(") (binary_expression "local_b8 != local_bc" (identifier "local_b8") (!= "!=") (identifier "local_bc")) () ")"))) () ")")) (compound_statement "{\n        *(uint ********)(puVar24 + -4) = pppppppuVar29;\n        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;\n        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;\n        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;\n                    \n        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;\n        FUN_0005f0b0();\n      }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar24 + -4)" (* "*") (cast_expression "(uint ********)(puVar24 + -4)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pppppppuVar29")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" (* "*") (cast_expression "(uint ********)(puVar24 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "pppppppuVar22 + -0x373b3" (identifier "pppppppuVar22") (+ "+") (number_literal "-0x373b3"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x7a0;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x7a0" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x7a0")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "pppppppuVar22 + -0x375d2" (identifier "pppppppuVar22") (+ "+") (number_literal "-0x375d2"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4506;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4506" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa4506")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))))) (if_statement "if (local_135 == '\0') {\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }\n      else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }" (if "if") (parenthesized_expression "(local_135 == '\0')" (( "(") (binary_expression "local_135 == '\0'" (identifier "local_135") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        iVar19 = *param_4;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }\n        iVar19 = param_4[1];\n        *param_4 = 0;\n        if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }\n        param_4[1] = 0;\n      }" ({ "{") (expression_statement "iVar19 = *param_4;" (assignment_expression "iVar19 = *param_4" (identifier "iVar19") (= "=") (pointer_expression "*param_4" (* "*") (identifier "param_4"))) (; ";")) (if_statement "if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;\n          FUN_00180780();\n        }" ({ "{") (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" (* "*") (cast_expression "(int *)(puVar24 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3d72;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3d72" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3d72")) (; ";")) (expression_statement "FUN_0005cea0();" (call_expression "FUN_0005cea0()" (identifier "FUN_0005cea0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0xc;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0xc" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0xc")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" (* "*") (cast_expression "(int *)(puVar24 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3d7c" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3d7c")) (; ";")) (expression_statement "FUN_00180780();" (call_expression "FUN_00180780()" (identifier "FUN_00180780") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar19 = param_4[1];" (assignment_expression "iVar19 = param_4[1]" (identifier "iVar19") (= "=") (subscript_expression "param_4[1]" (identifier "param_4") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "*param_4 = 0;" (assignment_expression "*param_4 = 0" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (= "=") (number_literal "0")) (; ";")) (if_statement "if (iVar19 != 0) {\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;\n          FUN_0005cea0();\n          *(undefined4 *)(puVar24 + -0xc) = 0xc;\n          *(int *)(puVar24 + -0x10) = iVar19;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;\n          FUN_00180780();\n        }" ({ "{") (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" (* "*") (cast_expression "(int *)(puVar24 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3da0;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3da0" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3da0")) (; ";")) (expression_statement "FUN_0005cea0();" (call_expression "FUN_0005cea0()" (identifier "FUN_0005cea0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0xc;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0xc" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0xc")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x10) = iVar19;" (assignment_expression "*(int *)(puVar24 + -0x10) = iVar19" (pointer_expression "*(int *)(puVar24 + -0x10)" (* "*") (cast_expression "(int *)(puVar24 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3daa;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3daa" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3daa")) (; ";")) (expression_statement "FUN_00180780();" (call_expression "FUN_00180780()" (identifier "FUN_00180780") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" (identifier "param_4") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }" (else "else") (compound_statement "{\n        if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }\n        if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }\n        if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }\n        if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }\n        param_1[0x15] = (uint ******)0x0;\n      }" ({ "{") (if_statement "if (*local_190 != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }" (if "if") (parenthesized_expression "(*local_190 != (uint ******)0x0)" (( "(") (binary_expression "*local_190 != (uint ******)0x0" (pointer_expression "*local_190" (* "*") (identifier "local_190")) (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = *local_190;\n          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;\n          FUN_00180740();\n        }" ({ "{") (expression_statement "*(uint *******)(puVar24 + -0x10) = *local_190;" (assignment_expression "*(uint *******)(puVar24 + -0x10) = *local_190" (pointer_expression "*(uint *******)(puVar24 + -0x10)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x10)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*local_190" (* "*") (identifier "local_190"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa282c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa282c" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa282c")) (; ";")) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" (identifier "FUN_00180740") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_190[1] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }" (if "if") (parenthesized_expression "(local_190[1] != (uint ******)0x0)" (( "(") (binary_expression "local_190[1] != (uint ******)0x0" (subscript_expression "local_190[1]" (identifier "local_190") ([ "[") (number_literal "1") (] "]")) (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = local_190[1];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;\n          FUN_00180740();\n        }" ({ "{") (expression_statement "*(uint *******)(puVar24 + -0x10) = local_190[1];" (assignment_expression "*(uint *******)(puVar24 + -0x10) = local_190[1]" (pointer_expression "*(uint *******)(puVar24 + -0x10)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x10)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "local_190[1]" (identifier "local_190") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa284b;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa284b" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa284b")) (; ";")) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" (identifier "FUN_00180740") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_190[3] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }" (if "if") (parenthesized_expression "(local_190[3] != (uint ******)0x0)" (( "(") (binary_expression "local_190[3] != (uint ******)0x0" (subscript_expression "local_190[3]" (identifier "local_190") ([ "[") (number_literal "3") (] "]")) (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = local_190[3];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;\n          FUN_00180740();\n        }" ({ "{") (expression_statement "*(uint *******)(puVar24 + -0x10) = local_190[3];" (assignment_expression "*(uint *******)(puVar24 + -0x10) = local_190[3]" (pointer_expression "*(uint *******)(puVar24 + -0x10)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x10)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "local_190[3]" (identifier "local_190") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa286a;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa286a" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa286a")) (; ";")) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" (identifier "FUN_00180740") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_190[6] != (uint ******)0x0) {\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }" (if "if") (parenthesized_expression "(local_190[6] != (uint ******)0x0)" (( "(") (binary_expression "local_190[6] != (uint ******)0x0" (subscript_expression "local_190[6]" (identifier "local_190") ([ "[") (number_literal "6") (] "]")) (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          *(uint *******)(puVar24 + -0x10) = local_190[6];\n          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;\n          FUN_00180740();\n        }" ({ "{") (expression_statement "*(uint *******)(puVar24 + -0x10) = local_190[6];" (assignment_expression "*(uint *******)(puVar24 + -0x10) = local_190[6]" (pointer_expression "*(uint *******)(puVar24 + -0x10)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x10)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "local_190[6]" (identifier "local_190") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2889;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2889" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2889")) (; ";")) (expression_statement "FUN_00180740();" (call_expression "FUN_00180740()" (identifier "FUN_00180740") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "param_1[0x15] = (uint ******)0x0;" (assignment_expression "param_1[0x15] = (uint ******)0x0" (subscript_expression "param_1[0x15]" (identifier "param_1") ([ "[") (number_literal "0x15") (] "]")) (= "=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }" (else "else") (compound_statement "{\n      local_ec = local_134;\n      ppppppuVar21 = (uint ******)local_160[0x10];\n      local_124 = (uint *******)local_160[0x11];\n      if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }\n      pppppppuVar22 = local_f0;\n      local_ec = local_134;\n      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;\n      uVar12 = gettext();\n      *(uint *******)(puVar26 + -4) = ppppppuVar21;\n      *(uint ********)(puVar26 + -8) = pppppppuVar22;\n      *(undefined4 *)(puVar26 + -0xc) = uVar12;\n      *(uint ********)(puVar26 + -0x10) = param_1;\n      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;\n      FUN_00091980();\n      puVar24 = puVar26;\n    }" ({ "{") (expression_statement "local_ec = local_134;" (assignment_expression "local_ec = local_134" (identifier "local_ec") (= "=") (identifier "local_134")) (; ";")) (expression_statement "ppppppuVar21 = (uint ******)local_160[0x10];" (assignment_expression "ppppppuVar21 = (uint ******)local_160[0x10]" (identifier "ppppppuVar21") (= "=") (cast_expression "(uint ******)local_160[0x10]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "local_160[0x10]" (identifier "local_160") ([ "[") (number_literal "0x10") (] "]")))) (; ";")) (expression_statement "local_124 = (uint *******)local_160[0x11];" (assignment_expression "local_124 = (uint *******)local_160[0x11]" (identifier "local_124") (= "=") (cast_expression "(uint *******)local_160[0x11]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_160[0x11]" (identifier "local_160") ([ "[") (number_literal "0x11") (] "]")))) (; ";")) (if_statement "if (ppppppuVar21 < local_148) {\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }" (if "if") (parenthesized_expression "(ppppppuVar21 < local_148)" (( "(") (binary_expression "ppppppuVar21 < local_148" (identifier "ppppppuVar21") (< "<") (identifier "local_148")) () ")")) (compound_statement "{\n        local_16c = (uint *******)0x0;\n        local_168 = 0;\n        local_1a0 = local_120 + 0x122;\n        local_1a4 = local_120 + 0x122;\n        puVar26 = auStack_1ac;\n        do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);\n      }" ({ "{") (expression_statement "local_16c = (uint *******)0x0;" (assignment_expression "local_16c = (uint *******)0x0" (identifier "local_16c") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_168 = 0;" (assignment_expression "local_168 = 0" (identifier "local_168") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1a0 = local_120 + 0x122;" (assignment_expression "local_1a0 = local_120 + 0x122" (identifier "local_1a0") (= "=") (binary_expression "local_120 + 0x122" (identifier "local_120") (+ "+") (number_literal "0x122"))) (; ";")) (expression_statement "local_1a4 = local_120 + 0x122;" (assignment_expression "local_1a4 = local_120 + 0x122" (identifier "local_1a4") (= "=") (binary_expression "local_120 + 0x122" (identifier "local_120") (+ "+") (number_literal "0x122"))) (; ";")) (expression_statement "puVar26 = auStack_1ac;" (assignment_expression "puVar26 = auStack_1ac" (identifier "puVar26") (= "=") (identifier "auStack_1ac")) (; ";")) (do_statement "do {\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        } while (ppppppuVar21 < local_148);" (do "do") (compound_statement "{\n          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);\n          local_ec = local_134;\n          if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }\nLAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);\n          pppppppuVar28 = local_134 + 0x10;\n          local_f0 = pppppppuVar27;\n          if (local_130 <= pppppppuVar27) goto LAB_000a2740;\n          local_ec = pppppppuVar28;\n          ppppppuVar21 = *pppppppuVar28;\n          local_124 = (uint *******)local_134[0x11];\n          puVar26 = puVar24;\n          local_134 = pppppppuVar28;\n        }" ({ "{") (expression_statement "local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);" (assignment_expression "local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144)" (identifier "local_12c") (= "=") (cast_expression "(uint *******)((int)ppppppuVar21 + (int)local_144)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)ppppppuVar21 + (int)local_144)" (( "(") (binary_expression "(int)ppppppuVar21 + (int)local_144" (cast_expression "(int)ppppppuVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppuVar21")) (+ "+") (cast_expression "(int)local_144" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_144"))) () ")")))) (; ";")) (expression_statement "local_ec = local_134;" (assignment_expression "local_ec = local_134" (identifier "local_ec") (= "=") (identifier "local_134")) (; ";")) (if_statement "if (local_135 == '\0') {\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }\n          else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }" (if "if") (parenthesized_expression "(local_135 == '\0')" (( "(") (binary_expression "local_135 == '\0'" (identifier "local_135") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            *(int *)(puVar26 + -4) = param_2;\n            *(uint ********)(puVar26 + -8) = local_f0;\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;\n            cVar7 = FUN_000925b0();\n            bVar33 = cVar7 == '\0';\n            bVar35 = cVar7 == '\x01';\n            if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }\n            iVar19 = 0x10;\n            pppppppuVar22 = local_12c;\n            pbVar31 = (byte *)((int)local_120 + -0xdee8f);\n            do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);\n            if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }\n            *(uint ********)(puVar26 + -0xc) = local_12c;\n            *(uint ********)(puVar26 + -0x10) = param_1;\n            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;\n            cVar7 = FUN_00091ac0();\n            ppppppuVar21 = *local_13c;\n            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }\n            pppppuVar15 = ppppppuVar21[3];\n            if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }\n            pppuVar4 = pppppuVar15[1][0x14];\n            bVar33 = pppuVar4 == (uint ***)0x0;\n            pppppppuVar29 = local_f0;\n            if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }\nLAB_000a2c3a:\n            local_f0 = pppppppuVar27;\n            param_1[0xe][(int)local_f0] = (uint *****)0x0;\n            ppppppuVar21 = param_1[0x21];\n            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n            puVar24 = puVar26;\n          }" ({ "{") (expression_statement "*(int *)(puVar26 + -4) = param_2;" (assignment_expression "*(int *)(puVar26 + -4) = param_2" (pointer_expression "*(int *)(puVar26 + -4)" (* "*") (cast_expression "(int *)(puVar26 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -4)" (( "(") (binary_expression "puVar26 + -4" (identifier "puVar26") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "param_2")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -8) = local_f0;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_f0" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2406;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2406" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2406")) (; ";")) (expression_statement "cVar7 = FUN_000925b0();" (assignment_expression "cVar7 = FUN_000925b0()" (identifier "cVar7") (= "=") (call_expression "FUN_000925b0()" (identifier "FUN_000925b0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "bVar33 = cVar7 == '\0';" (assignment_expression "bVar33 = cVar7 == '\0'" (identifier "bVar33") (= "=") (binary_expression "cVar7 == '\0'" (identifier "cVar7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) (; ";")) (expression_statement "bVar35 = cVar7 == '\x01';" (assignment_expression "bVar35 = cVar7 == '\x01'" (identifier "bVar35") (= "=") (binary_expression "cVar7 == '\x01'" (identifier "cVar7") (== "==") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'")))) (; ";")) (if_statement "if (bVar35) {\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }" (if "if") (parenthesized_expression "(bVar35)" (( "(") (identifier "bVar35") () ")")) (compound_statement "{\n              bVar33 = false;\n              bVar35 = (char)local_140 == '\0';\n              if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }\n            }" ({ "{") (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" (identifier "bVar33") (= "=") (false "false")) (; ";")) (expression_statement "bVar35 = (char)local_140 == '\0';" (assignment_expression "bVar35 = (char)local_140 == '\0'" (identifier "bVar35") (= "=") (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_140")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) (; ";")) (if_statement "if (bVar35) {\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }" (if "if") (parenthesized_expression "(bVar35)" (( "(") (identifier "bVar35") () ")")) (compound_statement "{\n                if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }\n                bVar33 = false;\n                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';\n                if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }\n              }" ({ "{") (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }" (if "if") (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" (( "(") (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]")) (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;\n                  FUN_0005f0b0();\n                }" ({ "{") (expression_statement "*(undefined4 *)(puVar26 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar26 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar26 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -4)" (( "(") (binary_expression "puVar26 + -4" (identifier "puVar26") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x5c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa4433;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa4433" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa4433")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" (identifier "bVar33") (= "=") (false "false")) (; ";")) (expression_statement "bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';" (assignment_expression "bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0'" (identifier "bVar35") (= "=") (binary_expression "*(char *)((int)(*local_13c)[2] + 0x1a25) == '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x1a25)" (* "*") (cast_expression "(char *)((int)(*local_13c)[2] + 0x1a25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)(*local_13c)[2] + 0x1a25)" (( "(") (binary_expression "(int)(*local_13c)[2] + 0x1a25" (cast_expression "(int)(*local_13c)[2]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]"))) (+ "+") (number_literal "0x1a25")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) (; ";")) (if_statement "if (bVar35) {\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }" (if "if") (parenthesized_expression "(bVar35)" (( "(") (identifier "bVar35") () ")")) (compound_statement "{\n                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                  bVar33 = false;\n                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n                  bVar35 = *puVar2 == 0;\n                }" ({ "{") (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" (identifier "puVar2") (= "=") (cast_expression "(uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + ((uint)local_f0 >> 5) * 4)" (( "(") (binary_expression "(int)local_b0 + ((uint)local_f0 >> 5) * 4" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (binary_expression "((uint)local_f0 >> 5) * 4" (parenthesized_expression "((uint)local_f0 >> 5)" (( "(") (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_f0")) (>> ">>") (number_literal "5")) () ")")) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" (identifier "bVar33") (= "=") (false "false")) (; ";")) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (= "=") (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (| "|") (binary_expression "1 << ((byte)local_f0 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "((byte)local_f0 & 0x1f)" (( "(") (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_f0")) (& "&") (number_literal "0x1f")) () ")"))))) (; ";")) (expression_statement "bVar35 = *puVar2 == 0;" (assignment_expression "bVar35 = *puVar2 == 0" (identifier "bVar35") (= "=") (binary_expression "*puVar2 == 0" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (== "==") (number_literal "0"))) (; ";")) (} "}"))) (} "}"))) (} "}"))) (expression_statement "iVar19 = 0x10;" (assignment_expression "iVar19 = 0x10" (identifier "iVar19") (= "=") (number_literal "0x10")) (; ";")) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" (identifier "pppppppuVar22") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdee8f);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdee8f)" (identifier "pbVar31") (= "=") (cast_expression "(byte *)((int)local_120 + -0xdee8f)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_120 + -0xdee8f)" (( "(") (binary_expression "(int)local_120 + -0xdee8f" (cast_expression "(int)local_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_120")) (+ "+") (number_literal "-0xdee8f")) () ")")))) (; ";")) (do_statement "do {\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            } while (bVar35);" (do "do") (compound_statement "{\n              pbVar30 = pbVar31;\n              if (iVar19 == 0) break;\n              iVar19 = iVar19 + -1;\n              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;\n              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;\n              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;\n              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n              pbVar31 = pbVar30;\n            }" ({ "{") (expression_statement "pbVar30 = pbVar31;" (assignment_expression "pbVar30 = pbVar31" (identifier "pbVar30") (= "=") (identifier "pbVar31")) (; ";")) (if_statement "if (iVar19 == 0) break;" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar19 = iVar19 + -1;" (assignment_expression "iVar19 = iVar19 + -1" (identifier "iVar19") (= "=") (binary_expression "iVar19 + -1" (identifier "iVar19") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1" (identifier "pbVar30") (= "=") (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" (identifier "pbVar31") (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar33 = *(byte *)pppppppuVar22 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 < *pbVar31" (identifier "bVar33") (= "=") (binary_expression "*(byte *)pppppppuVar22 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" (* "*") (cast_expression "(byte *)pppppppuVar22" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) (< "<") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "bVar35 = *(byte *)pppppppuVar22 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 == *pbVar31" (identifier "bVar35") (= "=") (binary_expression "*(byte *)pppppppuVar22 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" (* "*") (cast_expression "(byte *)pppppppuVar22" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) (== "==") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pbVar31 = pbVar30;" (assignment_expression "pbVar31 = pbVar30" (identifier "pbVar31") (= "=") (identifier "pbVar30")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar35)" (( "(") (identifier "bVar35") () ")")) (; ";")) (if_statement "if ((!bVar33 && !bVar35) == bVar33) {\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }" (if "if") (parenthesized_expression "((!bVar33 && !bVar35) == bVar33)" (( "(") (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" (( "(") (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" (! "!") (identifier "bVar33")) (&& "&&") (unary_expression "!bVar35" (! "!") (identifier "bVar35"))) () ")")) (== "==") (identifier "bVar33")) () ")")) (compound_statement "{\n              local_137 = 1;\n              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);\n              local_168 = (uint)local_ec[3] | local_168;\n              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n            }" ({ "{") (expression_statement "local_137 = 1;" (assignment_expression "local_137 = 1" (identifier "local_137") (= "=") (number_literal "1")) (; ";")) (expression_statement "local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);" (assignment_expression "local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c)" (identifier "local_16c") (= "=") (cast_expression "(uint *******)((uint)local_ec[2] | (uint)local_16c)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((uint)local_ec[2] | (uint)local_16c)" (( "(") (binary_expression "(uint)local_ec[2] | (uint)local_16c" (cast_expression "(uint)local_ec[2]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "local_ec[2]" (identifier "local_ec") ([ "[") (number_literal "2") (] "]"))) (| "|") (cast_expression "(uint)local_16c" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_16c"))) () ")")))) (; ";")) (expression_statement "local_168 = (uint)local_ec[3] | local_168;" (assignment_expression "local_168 = (uint)local_ec[3] | local_168" (identifier "local_168") (= "=") (binary_expression "(uint)local_ec[3] | local_168" (cast_expression "(uint)local_ec[3]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "local_ec[3]" (identifier "local_ec") ([ "[") (number_literal "3") (] "]"))) (| "|") (identifier "local_168"))) (; ";")) (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" (identifier "puVar2") (= "=") (cast_expression "(uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + ((uint)local_f0 >> 5) * 4)" (( "(") (binary_expression "(int)local_b0 + ((uint)local_f0 >> 5) * 4" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (binary_expression "((uint)local_f0 >> 5) * 4" (parenthesized_expression "((uint)local_f0 >> 5)" (( "(") (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_f0")) (>> ">>") (number_literal "5")) () ")")) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (= "=") (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (| "|") (binary_expression "1 << ((byte)local_f0 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "((byte)local_f0 & 0x1f)" (( "(") (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_f0")) (& "&") (number_literal "0x1f")) () ")"))))) (; ";")) (} "}"))) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2497;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2497" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2497")) (; ";")) (expression_statement "cVar7 = FUN_00091ac0();" (assignment_expression "cVar7 = FUN_00091ac0()" (identifier "cVar7") (= "=") (call_expression "FUN_00091ac0()" (identifier "FUN_00091ac0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "ppppppuVar21 = *local_13c;" (assignment_expression "ppppppuVar21 = *local_13c" (identifier "ppppppuVar21") (= "=") (pointer_expression "*local_13c" (* "*") (identifier "local_13c"))) (; ";")) (if_statement "if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }" (if "if") (parenthesized_expression "((cVar7 == '\x01') && ((char)local_140 == '\0'))" (( "(") (binary_expression "(cVar7 == '\x01') && ((char)local_140 == '\0')" (parenthesized_expression "(cVar7 == '\x01')" (( "(") (binary_expression "cVar7 == '\x01'" (identifier "cVar7") (== "==") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((char)local_140 == '\0')" (( "(") (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_140")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n              pppppuVar15 = ppppppuVar21[2];\n              if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }\n            }" ({ "{") (expression_statement "pppppuVar15 = ppppppuVar21[2];" (assignment_expression "pppppuVar15 = ppppppuVar21[2]" (identifier "pppppuVar15") (= "=") (subscript_expression "ppppppuVar21[2]" (identifier "ppppppuVar21") ([ "[") (number_literal "2") (] "]"))) (; ";")) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }" (if "if") (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar15 == (uint *****)0x0" (identifier "pppppuVar15") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                *(byte **)(puVar26 + -4) = pbVar30;\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;\n                FUN_0005f0b0();\n              }" ({ "{") (expression_statement "*(byte **)(puVar26 + -4) = pbVar30;" (assignment_expression "*(byte **)(puVar26 + -4) = pbVar30" (pointer_expression "*(byte **)(puVar26 + -4)" (* "*") (cast_expression "(byte **)(puVar26 + -4)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -4)" (( "(") (binary_expression "puVar26 + -4" (identifier "puVar26") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pbVar30")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x5c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa444f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa444f" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa444f")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }" (if "if") (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x1a25) == '\0')" (( "(") (binary_expression "*(char *)((int)pppppuVar15 + 0x1a25) == '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x1a25)" (* "*") (cast_expression "(char *)((int)pppppuVar15 + 0x1a25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppuVar15 + 0x1a25)" (( "(") (binary_expression "(int)pppppuVar15 + 0x1a25" (cast_expression "(int)pppppuVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppuVar15")) (+ "+") (number_literal "0x1a25")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);\n                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              }" ({ "{") (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" (identifier "puVar2") (= "=") (cast_expression "(uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + ((uint)local_f0 >> 5) * 4)" (( "(") (binary_expression "(int)local_b0 + ((uint)local_f0 >> 5) * 4" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (binary_expression "((uint)local_f0 >> 5) * 4" (parenthesized_expression "((uint)local_f0 >> 5)" (( "(") (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_f0")) (>> ">>") (number_literal "5")) () ")")) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (= "=") (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (| "|") (binary_expression "1 << ((byte)local_f0 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "((byte)local_f0 & 0x1f)" (( "(") (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_f0")) (& "&") (number_literal "0x1f")) () ")"))))) (; ";")) (} "}"))) (} "}"))) (expression_statement "pppppuVar15 = ppppppuVar21[3];" (assignment_expression "pppppuVar15 = ppppppuVar21[3]" (identifier "pppppuVar15") (= "=") (subscript_expression "ppppppuVar21[3]" (identifier "ppppppuVar21") ([ "[") (number_literal "3") (] "]"))) (; ";")) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }" (if "if") (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar15 == (uint *****)0x0" (identifier "pppppuVar15") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;\n              *(undefined4 *)(puVar26 + -0xc) = 0x69;\n              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;\n              FUN_0005f0b0();\n            }" ({ "{") (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371cf;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371cf" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x371cf" (identifier "local_120") (+ "+") (number_literal "-0x371cf"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x69;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x69" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x69")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa4314;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa4314" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa4314")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "pppuVar4 = pppppuVar15[1][0x14];" (assignment_expression "pppuVar4 = pppppuVar15[1][0x14]" (identifier "pppuVar4") (= "=") (subscript_expression "pppppuVar15[1][0x14]" (subscript_expression "pppppuVar15[1]" (identifier "pppppuVar15") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "0x14") (] "]"))) (; ";")) (expression_statement "bVar33 = pppuVar4 == (uint ***)0x0;" (assignment_expression "bVar33 = pppuVar4 == (uint ***)0x0" (identifier "bVar33") (= "=") (binary_expression "pppuVar4 == (uint ***)0x0" (identifier "pppuVar4") (== "==") (cast_expression "(uint ***)0x0" (( "(") (type_descriptor "uint ***" (type_identifier "uint") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (number_literal "0x0")))) (; ";")) (expression_statement "pppppppuVar29 = local_f0;" (assignment_expression "pppppppuVar29 = local_f0" (identifier "pppppppuVar29") (= "=") (identifier "local_f0")) (; ";")) (if_statement "if (bVar33) {\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }\n            else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }" (if "if") (parenthesized_expression "(bVar33)" (( "(") (identifier "bVar33") () ")")) (compound_statement "{\nLAB_000a2b98:\n              bVar35 = false;\n              iVar19 = 0x10;\n              pppppppuVar22 = local_12c;\n              pbVar31 = (byte *)((int)local_120 + -0xdd173);\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;\n              bVar33 = local_124 == (uint *******)0x7;\n              if (!bVar33) goto LAB_000a2522;\nLAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;\n              iVar19 = 0x13;\n              pppppppuVar22 = local_12c;\n              pppppppuVar27 = local_120 + -0x37b91;\n              do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);\n              if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }\n              *(uint ********)(puVar26 + -8) = pppppppuVar29;\n              *(int *)(puVar26 + -0xc) = param_3;\n              *(uint ********)(puVar26 + -0x10) = param_1;\n                    \n              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;\n              FUN_0009a280();\n              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);\n              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);\n              pppppppuVar29 = local_f0;\n              pppppppuVar27 = local_f0;\n            }" ({ "{") (labeled_statement "LAB_000a2b98:\n              bVar35 = false;" (statement_identifier "LAB_000a2b98") (: ":") (expression_statement "bVar35 = false;" (assignment_expression "bVar35 = false" (identifier "bVar35") (= "=") (false "false")) (; ";"))) (expression_statement "iVar19 = 0x10;" (assignment_expression "iVar19 = 0x10" (identifier "iVar19") (= "=") (number_literal "0x10")) (; ";")) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" (identifier "pppppppuVar22") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdd173);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdd173)" (identifier "pbVar31") (= "=") (cast_expression "(byte *)((int)local_120 + -0xdd173)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_120 + -0xdd173)" (( "(") (binary_expression "(int)local_120 + -0xdd173" (cast_expression "(int)local_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_120")) (+ "+") (number_literal "-0xdd173")) () ")")))) (; ";")) (do_statement "do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              } while (bVar33);" (do "do") (compound_statement "{\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n              }" ({ "{") (if_statement "if (iVar19 == 0) break;" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar19 = iVar19 + -1;" (assignment_expression "iVar19 = iVar19 + -1" (identifier "iVar19") (= "=") (binary_expression "iVar19 + -1" (identifier "iVar19") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar35 = *(byte *)pppppppuVar22 < *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 < *pbVar31" (identifier "bVar35") (= "=") (binary_expression "*(byte *)pppppppuVar22 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" (* "*") (cast_expression "(byte *)pppppppuVar22" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) (< "<") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "bVar33 = *(byte *)pppppppuVar22 == *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 == *pbVar31" (identifier "bVar33") (= "=") (binary_expression "*(byte *)pppppppuVar22 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" (* "*") (cast_expression "(byte *)pppppppuVar22" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) (== "==") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" (identifier "pbVar31") (= "=") (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" (identifier "pbVar31") (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar33)" (( "(") (identifier "bVar33") () ")")) (; ";")) (if_statement "if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;" (if "if") (parenthesized_expression "((!bVar35 && !bVar33) == bVar35)" (( "(") (binary_expression "(!bVar35 && !bVar33) == bVar35" (parenthesized_expression "(!bVar35 && !bVar33)" (( "(") (binary_expression "!bVar35 && !bVar33" (unary_expression "!bVar35" (! "!") (identifier "bVar35")) (&& "&&") (unary_expression "!bVar33" (! "!") (identifier "bVar33"))) () ")")) (== "==") (identifier "bVar35")) () ")")) (goto_statement "goto LAB_000a24fe;" (goto "goto") (statement_identifier "LAB_000a24fe") (; ";"))) (expression_statement "bVar33 = local_124 == (uint *******)0x7;" (assignment_expression "bVar33 = local_124 == (uint *******)0x7" (identifier "bVar33") (= "=") (binary_expression "local_124 == (uint *******)0x7" (identifier "local_124") (== "==") (cast_expression "(uint *******)0x7" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x7")))) (; ";")) (if_statement "if (!bVar33) goto LAB_000a2522;" (if "if") (parenthesized_expression "(!bVar33)" (( "(") (unary_expression "!bVar33" (! "!") (identifier "bVar33")) () ")")) (goto_statement "goto LAB_000a2522;" (goto "goto") (statement_identifier "LAB_000a2522") (; ";"))) (labeled_statement "LAB_000a2bcb:\n              bVar35 = local_124 < (uint *******)0x7;" (statement_identifier "LAB_000a2bcb") (: ":") (expression_statement "bVar35 = local_124 < (uint *******)0x7;" (assignment_expression "bVar35 = local_124 < (uint *******)0x7" (identifier "bVar35") (= "=") (binary_expression "local_124 < (uint *******)0x7" (identifier "local_124") (< "<") (cast_expression "(uint *******)0x7" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x7")))) (; ";"))) (expression_statement "iVar19 = 0x13;" (assignment_expression "iVar19 = 0x13" (identifier "iVar19") (= "=") (number_literal "0x13")) (; ";")) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" (identifier "pppppppuVar22") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pppppppuVar27 = local_120 + -0x37b91;" (assignment_expression "pppppppuVar27 = local_120 + -0x37b91" (identifier "pppppppuVar27") (= "=") (binary_expression "local_120 + -0x37b91" (identifier "local_120") (+ "+") (number_literal "-0x37b91"))) (; ";")) (do_statement "do {\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              } while (bVar33);" (do "do") (compound_statement "{\n                if (iVar19 == 0) break;\n                iVar19 = iVar19 + -1;\n                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;\n                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;\n                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);\n              }" ({ "{") (if_statement "if (iVar19 == 0) break;" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar19 = iVar19 + -1;" (assignment_expression "iVar19 = iVar19 + -1" (identifier "iVar19") (= "=") (binary_expression "iVar19 + -1" (identifier "iVar19") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27" (identifier "bVar35") (= "=") (binary_expression "*(byte *)pppppppuVar22 < *(byte *)pppppppuVar27" (pointer_expression "*(byte *)pppppppuVar22" (* "*") (cast_expression "(byte *)pppppppuVar22" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) (< "<") (pointer_expression "*(byte *)pppppppuVar27" (* "*") (cast_expression "(byte *)pppppppuVar27" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar27"))))) (; ";")) (expression_statement "bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27" (identifier "bVar33") (= "=") (binary_expression "*(byte *)pppppppuVar22 == *(byte *)pppppppuVar27" (pointer_expression "*(byte *)pppppppuVar22" (* "*") (cast_expression "(byte *)pppppppuVar22" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) (== "==") (pointer_expression "*(byte *)pppppppuVar27" (* "*") (cast_expression "(byte *)pppppppuVar27" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar27"))))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar27") (= "=") (cast_expression "(uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar27 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar27 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar27 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar27")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar33)" (( "(") (identifier "bVar33") () ")")) (; ";")) (if_statement "if ((!bVar35 && !bVar33) != bVar35) {\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }" (if "if") (parenthesized_expression "((!bVar35 && !bVar33) != bVar35)" (( "(") (binary_expression "(!bVar35 && !bVar33) != bVar35" (parenthesized_expression "(!bVar35 && !bVar33)" (( "(") (binary_expression "!bVar35 && !bVar33" (unary_expression "!bVar35" (! "!") (identifier "bVar35")) (&& "&&") (unary_expression "!bVar33" (! "!") (identifier "bVar33"))) () ")")) (!= "!=") (identifier "bVar35")) () ")")) (compound_statement "{\n                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n                pppppppuVar27 = pppppppuVar29;\n                if (bVar33) goto LAB_000a2c18;\nLAB_000a2551:\n                bVar33 = false;\n                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;\n                pppppppuVar29 = pppppppuVar27;\n                if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }\nLAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);\n                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;\nLAB_000a259c:\n                pppppppuVar22 = local_120;\n                *(uint ********)(puVar26 + -0x10) = local_124;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;\n                cVar7 = FUN_00066600();\n                pppppppuVar27 = local_120;\n                pppppppuVar29 = extraout_ECX_00;\n                if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }\n                goto LAB_000a22b0;\n              }" ({ "{") (expression_statement "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;" (assignment_expression "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" (identifier "bVar33") (= "=") (binary_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" (parenthesized_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4))" (( "(") (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f) &\n                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "((byte)pppppppuVar29 & 0x1f)" (( "(") (binary_expression "(byte)pppppppuVar29 & 0x1f" (cast_expression "(byte)pppppppuVar29" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "pppppppuVar29")) (& "&") (number_literal "0x1f")) () ")"))) (& "&") (pointer_expression "*(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (* "*") (cast_expression "(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (( "(") (binary_expression "(int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (binary_expression "((uint)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((uint)pppppppuVar29 >> 5)" (( "(") (binary_expression "(uint)pppppppuVar29 >> 5" (cast_expression "(uint)pppppppuVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppuVar29")) (>> ">>") (number_literal "5")) () ")")) (* "*") (number_literal "4"))) () ")"))))) () ")")) (!= "!=") (number_literal "0"))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);" (assignment_expression "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" (identifier "CONCAT31") (argument_list "((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" (( "(") (call_expression "(uint3)((uint)pppppppuVar29 >> 0xd)" (parenthesized_expression "(uint3)" (( "(") (identifier "uint3") () ")")) (argument_list "((uint)pppppppuVar29 >> 0xd)" (( "(") (binary_expression "(uint)pppppppuVar29 >> 0xd" (cast_expression "(uint)pppppppuVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppuVar29")) (>> ">>") (number_literal "0xd")) () ")"))) (, ",") (identifier "bVar33") () ")"))))) (; ";")) (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" (identifier "pppppppuVar27") (= "=") (identifier "pppppppuVar29")) (; ";")) (if_statement "if (bVar33) goto LAB_000a2c18;" (if "if") (parenthesized_expression "(bVar33)" (( "(") (identifier "bVar33") () ")")) (goto_statement "goto LAB_000a2c18;" (goto "goto") (statement_identifier "LAB_000a2c18") (; ";"))) (labeled_statement "LAB_000a2551:\n                bVar33 = false;" (statement_identifier "LAB_000a2551") (: ":") (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" (identifier "bVar33") (= "=") (false "false")) (; ";"))) (expression_statement "bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;" (assignment_expression "bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0" (identifier "bVar35") (= "=") (binary_expression "(*(byte *)((int)local_ec + 9) & 2) == 0" (parenthesized_expression "(*(byte *)((int)local_ec + 9) & 2)" (( "(") (binary_expression "*(byte *)((int)local_ec + 9) & 2" (pointer_expression "*(byte *)((int)local_ec + 9)" (* "*") (cast_expression "(byte *)((int)local_ec + 9)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_ec + 9)" (( "(") (binary_expression "(int)local_ec + 9" (cast_expression "(int)local_ec" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_ec")) (+ "+") (number_literal "9")) () ")")))) (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0"))) (; ";")) (expression_statement "pppppppuVar29 = pppppppuVar27;" (assignment_expression "pppppppuVar29 = pppppppuVar27" (identifier "pppppppuVar29") (= "=") (identifier "pppppppuVar27")) (; ";")) (if_statement "if (bVar35) {\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }" (if "if") (parenthesized_expression "(bVar35)" (( "(") (identifier "bVar35") () ")")) (compound_statement "{\n                  pppppppuVar29 = (uint *******)0xd;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdd163);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }\n                }" ({ "{") (expression_statement "pppppppuVar29 = (uint *******)0xd;" (assignment_expression "pppppppuVar29 = (uint *******)0xd" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)0xd" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xd"))) (; ";")) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" (identifier "pppppppuVar28") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdd163);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdd163)" (identifier "pbVar31") (= "=") (cast_expression "(byte *)((int)local_120 + -0xdd163)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_120 + -0xdd163)" (( "(") (binary_expression "(int)local_120 + -0xdd163" (cast_expression "(int)local_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_120")) (+ "+") (number_literal "-0xdd163")) () ")")))) (; ";")) (do_statement "do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);" (do "do") (compound_statement "{\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  }" ({ "{") (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" (if "if") (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar29 == (uint *******)0x0" (identifier "pppppppuVar29") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar29 + -1)" (( "(") (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (expression_statement "bVar33 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 < *pbVar31" (identifier "bVar33") (= "=") (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (< "<") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "bVar35 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar28 == *pbVar31" (identifier "bVar35") (= "=") (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (== "==") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar28") (= "=") (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar28")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" (identifier "pbVar31") (= "=") (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" (identifier "pbVar31") (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar35)" (( "(") (identifier "bVar35") () ")")) (; ";")) (if_statement "if ((!bVar33 && !bVar35) == bVar33) {\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }" (if "if") (parenthesized_expression "((!bVar33 && !bVar35) == bVar33)" (( "(") (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" (( "(") (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" (! "!") (identifier "bVar33")) (&& "&&") (unary_expression "!bVar35" (! "!") (identifier "bVar35"))) () ")")) (== "==") (identifier "bVar33")) () ")")) (compound_statement "{\n                    *(uint *********)(puVar26 + -0x10) = &local_ec;\n                    *(uint ********)(puVar26 + -0x14) = local_12c;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = param_3;\n                    *(uint ********)(puVar26 + -0x20) = param_1;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;\n                    cVar7 = FUN_0009cac0();\n                    pppppppuVar29 = extraout_ECX_11;\n                    pppppppuVar27 = local_f0;\n                    if (cVar7 == '\0') goto LAB_000a2c3a;\n                  }" ({ "{") (expression_statement "*(uint *********)(puVar26 + -0x10) = &local_ec;" (assignment_expression "*(uint *********)(puVar26 + -0x10) = &local_ec" (pointer_expression "*(uint *********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint *********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_ec" (& "&") (identifier "local_ec"))) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x18) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar26 + -0x18) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar26 + -0x18)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x18)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x18)" (( "(") (binary_expression "puVar26 + -0x18" (identifier "puVar26") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "pppppppuVar27")) (; ";")) (expression_statement "*(int *)(puVar26 + -0x1c) = param_3;" (assignment_expression "*(int *)(puVar26 + -0x1c) = param_3" (pointer_expression "*(int *)(puVar26 + -0x1c)" (* "*") (cast_expression "(int *)(puVar26 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x1c)" (( "(") (binary_expression "puVar26 + -0x1c" (identifier "puVar26") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x20) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x20) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x20)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x20)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x20)" (( "(") (binary_expression "puVar26 + -0x20" (identifier "puVar26") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa352c;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa352c" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x24)" (( "(") (binary_expression "puVar26 + -0x24" (identifier "puVar26") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0xa352c")) (; ";")) (expression_statement "cVar7 = FUN_0009cac0();" (assignment_expression "cVar7 = FUN_0009cac0()" (identifier "cVar7") (= "=") (call_expression "FUN_0009cac0()" (identifier "FUN_0009cac0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_11;" (assignment_expression "pppppppuVar29 = extraout_ECX_11" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_11")) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (if_statement "if (cVar7 == '\0') goto LAB_000a2c3a;" (if "if") (parenthesized_expression "(cVar7 == '\0')" (( "(") (binary_expression "cVar7 == '\0'" (identifier "cVar7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000a2c3a;" (goto "goto") (statement_identifier "LAB_000a2c3a") (; ";"))) (} "}"))) (} "}"))) (labeled_statement "LAB_000a2583:\n                iVar19 = *(int *)(param_3 + 0x1d0);" (statement_identifier "LAB_000a2583") (: ":") (expression_statement "iVar19 = *(int *)(param_3 + 0x1d0);" (assignment_expression "iVar19 = *(int *)(param_3 + 0x1d0)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(param_3 + 0x1d0)" (* "*") (cast_expression "(int *)(param_3 + 0x1d0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_3 + 0x1d0)" (( "(") (binary_expression "param_3 + 0x1d0" (identifier "param_3") (+ "+") (number_literal "0x1d0")) () ")"))))) (; ";"))) (if_statement "if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;" (if "if") (parenthesized_expression "((iVar19 == 0) || ((char)pppppppuVar22 != '\0'))" (( "(") (binary_expression "(iVar19 == 0) || ((char)pppppppuVar22 != '\0')" (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "((char)pppppppuVar22 != '\0')" (( "(") (binary_expression "(char)pppppppuVar22 != '\0'" (cast_expression "(char)pppppppuVar22" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "pppppppuVar22")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (goto_statement "goto LAB_000a22b0;" (goto "goto") (statement_identifier "LAB_000a22b0") (; ";"))) (labeled_statement "LAB_000a259c:\n                pppppppuVar22 = local_120;" (statement_identifier "LAB_000a259c") (: ":") (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";"))) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_124")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa25b0;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa25b0" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa25b0")) (; ";")) (expression_statement "cVar7 = FUN_00066600();" (assignment_expression "cVar7 = FUN_00066600()" (identifier "cVar7") (= "=") (call_expression "FUN_00066600()" (identifier "FUN_00066600") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" (identifier "pppppppuVar27") (= "=") (identifier "local_120")) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_00;" (assignment_expression "pppppppuVar29 = extraout_ECX_00" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_00")) (; ";")) (if_statement "if (cVar7 != '\0') {\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }" (if "if") (parenthesized_expression "(cVar7 != '\0')" (( "(") (binary_expression "cVar7 != '\0'" (identifier "cVar7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                  local_150 = local_ec[9];\n                  local_154 = (uint *******)local_ec[8];\n                  ppppppuVar21 = param_1[0xd];\n                  if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }\n                  *(uint *******)(puVar26 + -0xc) = local_150;\n                  *(uint ********)(puVar26 + -0x10) = local_154;\n                  *(uint ********)(puVar26 + -0x14) = local_12c;\n                  *(uint ********)(puVar26 + -0x18) = local_f0;\n                  *(uint ********)(puVar26 + -0x1c) = param_1;\n                  *(int *)(puVar26 + -0x20) = iVar19;\n                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;\n                  FUN_00067350();\n                  pppppppuVar29 = extraout_ECX_01;\n                  pppppppuVar22 = pppppppuVar27;\n                }" ({ "{") (expression_statement "local_150 = local_ec[9];" (assignment_expression "local_150 = local_ec[9]" (identifier "local_150") (= "=") (subscript_expression "local_ec[9]" (identifier "local_ec") ([ "[") (number_literal "9") (] "]"))) (; ";")) (expression_statement "local_154 = (uint *******)local_ec[8];" (assignment_expression "local_154 = (uint *******)local_ec[8]" (identifier "local_154") (= "=") (cast_expression "(uint *******)local_ec[8]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_ec[8]" (identifier "local_ec") ([ "[") (number_literal "8") (] "]")))) (; ";")) (expression_statement "ppppppuVar21 = param_1[0xd];" (assignment_expression "ppppppuVar21 = param_1[0xd]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0xd]" (identifier "param_1") ([ "[") (number_literal "0xd") (] "]"))) (; ";")) (if_statement "if (ppppppuVar21 != (uint ******)0x0) {\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }" (if "if") (parenthesized_expression "(ppppppuVar21 != (uint ******)0x0)" (( "(") (binary_expression "ppppppuVar21 != (uint ******)0x0" (identifier "ppppppuVar21") (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    ppppppuVar17 = (uint ******)ppppppuVar21[2];\n                    ppppppuVar13 = ppppppuVar21 + 1;\n                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }\n                  }" ({ "{") (expression_statement "ppppppuVar17 = (uint ******)ppppppuVar21[2];" (assignment_expression "ppppppuVar17 = (uint ******)ppppppuVar21[2]" (identifier "ppppppuVar17") (= "=") (cast_expression "(uint ******)ppppppuVar21[2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar21[2]" (identifier "ppppppuVar21") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "ppppppuVar13 = ppppppuVar21 + 1;" (assignment_expression "ppppppuVar13 = ppppppuVar21 + 1" (identifier "ppppppuVar13") (= "=") (binary_expression "ppppppuVar21 + 1" (identifier "ppppppuVar21") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }" (if "if") (parenthesized_expression "((uint ******)ppppppuVar21[2] != (uint ******)0x0)" (( "(") (binary_expression "(uint ******)ppppppuVar21[2] != (uint ******)0x0" (cast_expression "(uint ******)ppppppuVar21[2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar21[2]" (identifier "ppppppuVar21") ([ "[") (number_literal "2") (] "]"))) (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);\nLAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }\n                    }" ({ "{") (do_statement "do {\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);" (do "do") (compound_statement "{\n                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }\n                        ppppppuVar1 = ppppppuVar20 + 3;\n                        ppppppuVar17 = (uint ******)*ppppppuVar1;\n                        ppppppuVar20 = ppppppuVar13;\n                      }" ({ "{") (while_statement "while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }" (while "while") (parenthesized_expression "(ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4])" (( "(") (comma_expression "ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]" (assignment_expression "ppppppuVar20 = ppppppuVar17" (identifier "ppppppuVar20") (= "=") (identifier "ppppppuVar17")) (, ",") (binary_expression "local_f0 <= ppppppuVar20[4]" (identifier "local_f0") (<= "<=") (subscript_expression "ppppppuVar20[4]" (identifier "ppppppuVar20") ([ "[") (number_literal "4") (] "]")))) () ")")) (compound_statement "{\n                          ppppppuVar17 = (uint ******)ppppppuVar20[2];\n                          ppppppuVar13 = ppppppuVar20;\n                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;\n                        }" ({ "{") (expression_statement "ppppppuVar17 = (uint ******)ppppppuVar20[2];" (assignment_expression "ppppppuVar17 = (uint ******)ppppppuVar20[2]" (identifier "ppppppuVar17") (= "=") (cast_expression "(uint ******)ppppppuVar20[2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar20[2]" (identifier "ppppppuVar20") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "ppppppuVar13 = ppppppuVar20;" (assignment_expression "ppppppuVar13 = ppppppuVar20" (identifier "ppppppuVar13") (= "=") (identifier "ppppppuVar20")) (; ";")) (if_statement "if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;" (if "if") (parenthesized_expression "((uint ******)ppppppuVar20[2] == (uint ******)0x0)" (( "(") (binary_expression "(uint ******)ppppppuVar20[2] == (uint ******)0x0" (cast_expression "(uint ******)ppppppuVar20[2]" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppuVar20[2]" (identifier "ppppppuVar20") ([ "[") (number_literal "2") (] "]"))) (== "==") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000a260d;" (goto "goto") (statement_identifier "LAB_000a260d") (; ";"))) (} "}"))) (expression_statement "ppppppuVar1 = ppppppuVar20 + 3;" (assignment_expression "ppppppuVar1 = ppppppuVar20 + 3" (identifier "ppppppuVar1") (= "=") (binary_expression "ppppppuVar20 + 3" (identifier "ppppppuVar20") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "ppppppuVar17 = (uint ******)*ppppppuVar1;" (assignment_expression "ppppppuVar17 = (uint ******)*ppppppuVar1" (identifier "ppppppuVar17") (= "=") (cast_expression "(uint ******)*ppppppuVar1" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (pointer_expression "*ppppppuVar1" (* "*") (identifier "ppppppuVar1")))) (; ";")) (expression_statement "ppppppuVar20 = ppppppuVar13;" (assignment_expression "ppppppuVar20 = ppppppuVar13" (identifier "ppppppuVar20") (= "=") (identifier "ppppppuVar13")) (; ";")) (} "}")) (while "while") (parenthesized_expression "((uint ******)*ppppppuVar1 != (uint ******)0x0)" (( "(") (binary_expression "(uint ******)*ppppppuVar1 != (uint ******)0x0" (cast_expression "(uint ******)*ppppppuVar1" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (pointer_expression "*ppppppuVar1" (* "*") (identifier "ppppppuVar1"))) (!= "!=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (labeled_statement "LAB_000a260d:\n                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }" (statement_identifier "LAB_000a260d") (: ":") (if_statement "if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }" (if "if") (parenthesized_expression "((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0))" (( "(") (binary_expression "(ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)" (parenthesized_expression "(ppppppuVar21 + 1 != ppppppuVar20)" (( "(") (binary_expression "ppppppuVar21 + 1 != ppppppuVar20" (binary_expression "ppppppuVar21 + 1" (identifier "ppppppuVar21") (+ "+") (number_literal "1")) (!= "!=") (identifier "ppppppuVar20")) () ")")) (&& "&&") (parenthesized_expression "(ppppppuVar20[4] <= local_f0)" (( "(") (binary_expression "ppppppuVar20[4] <= local_f0" (subscript_expression "ppppppuVar20[4]" (identifier "ppppppuVar20") ([ "[") (number_literal "4") (] "]")) (<= "<=") (identifier "local_f0")) () ")"))) () ")")) (compound_statement "{\n                        local_154 = (uint *******)ppppppuVar20[5];\n                        local_150 = (uint ******)0x0;\n                      }" ({ "{") (expression_statement "local_154 = (uint *******)ppppppuVar20[5];" (assignment_expression "local_154 = (uint *******)ppppppuVar20[5]" (identifier "local_154") (= "=") (cast_expression "(uint *******)ppppppuVar20[5]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "ppppppuVar20[5]" (identifier "ppppppuVar20") ([ "[") (number_literal "5") (] "]")))) (; ";")) (expression_statement "local_150 = (uint ******)0x0;" (assignment_expression "local_150 = (uint ******)0x0" (identifier "local_150") (= "=") (cast_expression "(uint ******)0x0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (} "}"))) (} "}"))) (expression_statement "*(uint *******)(puVar26 + -0xc) = local_150;" (assignment_expression "*(uint *******)(puVar26 + -0xc) = local_150" (pointer_expression "*(uint *******)(puVar26 + -0xc)" (* "*") (cast_expression "(uint *******)(puVar26 + -0xc)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_150")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_154;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_154" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_154")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x18) = local_f0;" (assignment_expression "*(uint ********)(puVar26 + -0x18) = local_f0" (pointer_expression "*(uint ********)(puVar26 + -0x18)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x18)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x18)" (( "(") (binary_expression "puVar26 + -0x18" (identifier "puVar26") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x1c) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x1c) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x1c)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x1c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x1c)" (( "(") (binary_expression "puVar26 + -0x1c" (identifier "puVar26") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(int *)(puVar26 + -0x20) = iVar19;" (assignment_expression "*(int *)(puVar26 + -0x20) = iVar19" (pointer_expression "*(int *)(puVar26 + -0x20)" (* "*") (cast_expression "(int *)(puVar26 + -0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x20)" (( "(") (binary_expression "puVar26 + -0x20" (identifier "puVar26") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa263f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa263f" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x24)" (( "(") (binary_expression "puVar26 + -0x24" (identifier "puVar26") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0xa263f")) (; ";")) (expression_statement "FUN_00067350();" (call_expression "FUN_00067350()" (identifier "FUN_00067350") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_01;" (assignment_expression "pppppppuVar29 = extraout_ECX_01" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_01")) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" (identifier "pppppppuVar22") (= "=") (identifier "pppppppuVar27")) (; ";")) (} "}"))) (goto_statement "goto LAB_000a22b0;" (goto "goto") (statement_identifier "LAB_000a22b0") (; ";")) (} "}"))) (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "pppppppuVar29")) (; ";")) (expression_statement "*(int *)(puVar26 + -0xc) = param_3;" (assignment_expression "*(int *)(puVar26 + -0xc) = param_3" (pointer_expression "*(int *)(puVar26 + -0xc)" (* "*") (cast_expression "(int *)(puVar26 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa326f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa326f" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa326f")) (; ";")) (expression_statement "FUN_0009a280();" (call_expression "FUN_0009a280()" (identifier "FUN_0009a280") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);" (assignment_expression "pppppppuVar22 = (uint *******)((uint)local_f0 >> 5)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)((uint)local_f0 >> 5)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((uint)local_f0 >> 5)" (( "(") (binary_expression "(uint)local_f0 >> 5" (cast_expression "(uint)local_f0" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_f0")) (>> ">>") (number_literal "5")) () ")")))) (; ";")) (expression_statement "puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4)" (identifier "puVar2") (= "=") (cast_expression "(uint *)((int)local_b0 + (int)pppppppuVar22 * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + (int)pppppppuVar22 * 4)" (( "(") (binary_expression "(int)local_b0 + (int)pppppppuVar22 * 4" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (binary_expression "(int)pppppppuVar22 * 4" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (= "=") (binary_expression "*puVar2 | 1 << ((byte)local_f0 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (| "|") (binary_expression "1 << ((byte)local_f0 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "((byte)local_f0 & 0x1f)" (( "(") (binary_expression "(byte)local_f0 & 0x1f" (cast_expression "(byte)local_f0" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_f0")) (& "&") (number_literal "0x1f")) () ")"))))) (; ";")) (expression_statement "pppppppuVar29 = local_f0;" (assignment_expression "pppppppuVar29 = local_f0" (identifier "pppppppuVar29") (= "=") (identifier "local_f0")) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (} "}")) (else_clause "else {\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }" (else "else") (compound_statement "{\n              local_154 = local_f0;\n              *(uint ****)(puVar26 + -0xc) = pppuVar4;\n              *(uint ********)(puVar26 + -0x10) = local_12c;\n              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;\n              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n              bVar33 = iVar19 == 0;\n              pppppppuVar29 = local_154;\n              if (!bVar33) goto LAB_000a2b98;\nLAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);\n              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);\n              bVar33 = local_124 == (uint *******)0x7;\n              if (bVar33) goto LAB_000a2bcb;\nLAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;\n              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);\n              if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }\nLAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);\n              pppppppuVar27 = pppppppuVar29;\n              if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;\n            }" ({ "{") (expression_statement "local_154 = local_f0;" (assignment_expression "local_154 = local_f0" (identifier "local_154") (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ****)(puVar26 + -0xc) = pppuVar4;" (assignment_expression "*(uint ****)(puVar26 + -0xc) = pppuVar4" (pointer_expression "*(uint ****)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ****)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ****" (type_identifier "uint") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "pppuVar4")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa24ed;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa24ed" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa24ed")) (; ";")) (expression_statement "iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));" (assignment_expression "iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" (identifier "iVar19") (= "=") (call_expression "strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" (identifier "strcmp") (argument_list "(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" (( "(") (pointer_expression "*(char **)(puVar26 + -0x10)" (* "*") (cast_expression "(char **)(puVar26 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar26 + -0xc)" (* "*") (cast_expression "(char **)(puVar26 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (expression_statement "bVar33 = iVar19 == 0;" (assignment_expression "bVar33 = iVar19 == 0" (identifier "bVar33") (= "=") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0"))) (; ";")) (expression_statement "pppppppuVar29 = local_154;" (assignment_expression "pppppppuVar29 = local_154" (identifier "pppppppuVar29") (= "=") (identifier "local_154")) (; ";")) (if_statement "if (!bVar33) goto LAB_000a2b98;" (if "if") (parenthesized_expression "(!bVar33)" (( "(") (unary_expression "!bVar33" (! "!") (identifier "bVar33")) () ")")) (goto_statement "goto LAB_000a2b98;" (goto "goto") (statement_identifier "LAB_000a2b98") (; ";"))) (labeled_statement "LAB_000a24fe:\n              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);" (statement_identifier "LAB_000a24fe") (: ":") (expression_statement "puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);" (assignment_expression "puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (identifier "puVar2") (= "=") (cast_expression "(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (( "(") (binary_expression "(int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (binary_expression "((uint)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((uint)pppppppuVar29 >> 5)" (( "(") (binary_expression "(uint)pppppppuVar29 >> 5" (cast_expression "(uint)pppppppuVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppuVar29")) (>> ">>") (number_literal "5")) () ")")) (* "*") (number_literal "4"))) () ")")))) (; ";"))) (expression_statement "*puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);" (assignment_expression "*puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (= "=") (binary_expression "*puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f)" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (| "|") (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "((byte)pppppppuVar29 & 0x1f)" (( "(") (binary_expression "(byte)pppppppuVar29 & 0x1f" (cast_expression "(byte)pppppppuVar29" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "pppppppuVar29")) (& "&") (number_literal "0x1f")) () ")"))))) (; ";")) (expression_statement "bVar33 = local_124 == (uint *******)0x7;" (assignment_expression "bVar33 = local_124 == (uint *******)0x7" (identifier "bVar33") (= "=") (binary_expression "local_124 == (uint *******)0x7" (identifier "local_124") (== "==") (cast_expression "(uint *******)0x7" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x7")))) (; ";")) (if_statement "if (bVar33) goto LAB_000a2bcb;" (if "if") (parenthesized_expression "(bVar33)" (( "(") (identifier "bVar33") () ")")) (goto_statement "goto LAB_000a2bcb;" (goto "goto") (statement_identifier "LAB_000a2bcb") (; ";"))) (labeled_statement "LAB_000a2522:\n              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;" (statement_identifier "LAB_000a2522") (: ":") (expression_statement "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;" (assignment_expression "bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" (identifier "bVar33") (= "=") (binary_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0" (parenthesized_expression "(1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4))" (( "(") (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f) &\n                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (binary_expression "1 << ((byte)pppppppuVar29 & 0x1f)" (number_literal "1") (<< "<<") (parenthesized_expression "((byte)pppppppuVar29 & 0x1f)" (( "(") (binary_expression "(byte)pppppppuVar29 & 0x1f" (cast_expression "(byte)pppppppuVar29" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "pppppppuVar29")) (& "&") (number_literal "0x1f")) () ")"))) (& "&") (pointer_expression "*(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (* "*") (cast_expression "(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)" (( "(") (binary_expression "(int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4" (cast_expression "(int)local_b0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b0")) (+ "+") (binary_expression "((uint)pppppppuVar29 >> 5) * 4" (parenthesized_expression "((uint)pppppppuVar29 >> 5)" (( "(") (binary_expression "(uint)pppppppuVar29 >> 5" (cast_expression "(uint)pppppppuVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppuVar29")) (>> ">>") (number_literal "5")) () ")")) (* "*") (number_literal "4"))) () ")"))))) () ")")) (!= "!=") (number_literal "0"))) (; ";"))) (expression_statement "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);" (assignment_expression "pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" (identifier "CONCAT31") (argument_list "((uint3)((uint)pppppppuVar29 >> 0xd),bVar33)" (( "(") (call_expression "(uint3)((uint)pppppppuVar29 >> 0xd)" (parenthesized_expression "(uint3)" (( "(") (identifier "uint3") () ")")) (argument_list "((uint)pppppppuVar29 >> 0xd)" (( "(") (binary_expression "(uint)pppppppuVar29 >> 0xd" (cast_expression "(uint)pppppppuVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppppppuVar29")) (>> ">>") (number_literal "0xd")) () ")"))) (, ",") (identifier "bVar33") () ")"))))) (; ";")) (if_statement "if (!bVar33) {\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }" (if "if") (parenthesized_expression "(!bVar33)" (( "(") (unary_expression "!bVar33" (! "!") (identifier "bVar33")) () ")")) (compound_statement "{\n                pppppppuVar22 = (uint *******)0x0;\n                pppppppuVar27 = pppppppuVar29;\n                if (local_124 != (uint *******)0x11) goto LAB_000a2551;\n                *(void ***)(puVar26 + -0x10) = &local_b0;\n                *(uint *******)(puVar26 + -0x14) = local_148;\n                *(uint *******)(puVar26 + -0x18) = local_144;\n                *(uint *******)(puVar26 + -0x1c) = local_160;\n                *(uint ********)(puVar26 + -0x20) = local_12c;\n                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;\n                *(int *)(puVar26 + -0x28) = param_3;\n                *(int *)(puVar26 + -0x2c) = param_2;\n                *(uint ********)(puVar26 + -0x30) = param_1;\n                    \n                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;\n                cVar7 = FUN_0009e290();\n                pppppppuVar29 = extraout_ECX_10;\n                pppppppuVar27 = local_f0;\n                if (cVar7 == '\0') goto LAB_000a2c3a;\n                pppppppuVar22 = (uint *******)0x0;\n                goto LAB_000a2583;\n              }" ({ "{") (expression_statement "pppppppuVar22 = (uint *******)0x0;" (assignment_expression "pppppppuVar22 = (uint *******)0x0" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" (identifier "pppppppuVar27") (= "=") (identifier "pppppppuVar29")) (; ";")) (if_statement "if (local_124 != (uint *******)0x11) goto LAB_000a2551;" (if "if") (parenthesized_expression "(local_124 != (uint *******)0x11)" (( "(") (binary_expression "local_124 != (uint *******)0x11" (identifier "local_124") (!= "!=") (cast_expression "(uint *******)0x11" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x11"))) () ")")) (goto_statement "goto LAB_000a2551;" (goto "goto") (statement_identifier "LAB_000a2551") (; ";"))) (expression_statement "*(void ***)(puVar26 + -0x10) = &local_b0;" (assignment_expression "*(void ***)(puVar26 + -0x10) = &local_b0" (pointer_expression "*(void ***)(puVar26 + -0x10)" (* "*") (cast_expression "(void ***)(puVar26 + -0x10)" (( "(") (type_descriptor "void ***" (primitive_type "void") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_b0" (& "&") (identifier "local_b0"))) (; ";")) (expression_statement "*(uint *******)(puVar26 + -0x14) = local_148;" (assignment_expression "*(uint *******)(puVar26 + -0x14) = local_148" (pointer_expression "*(uint *******)(puVar26 + -0x14)" (* "*") (cast_expression "(uint *******)(puVar26 + -0x14)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_148")) (; ";")) (expression_statement "*(uint *******)(puVar26 + -0x18) = local_144;" (assignment_expression "*(uint *******)(puVar26 + -0x18) = local_144" (pointer_expression "*(uint *******)(puVar26 + -0x18)" (* "*") (cast_expression "(uint *******)(puVar26 + -0x18)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar26 + -0x18)" (( "(") (binary_expression "puVar26 + -0x18" (identifier "puVar26") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_144")) (; ";")) (expression_statement "*(uint *******)(puVar26 + -0x1c) = local_160;" (assignment_expression "*(uint *******)(puVar26 + -0x1c) = local_160" (pointer_expression "*(uint *******)(puVar26 + -0x1c)" (* "*") (cast_expression "(uint *******)(puVar26 + -0x1c)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar26 + -0x1c)" (( "(") (binary_expression "puVar26 + -0x1c" (identifier "puVar26") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_160")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x20)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x20)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x20)" (( "(") (binary_expression "puVar26 + -0x20" (identifier "puVar26") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x24) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar26 + -0x24) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar26 + -0x24)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x24)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x24)" (( "(") (binary_expression "puVar26 + -0x24" (identifier "puVar26") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "pppppppuVar29")) (; ";")) (expression_statement "*(int *)(puVar26 + -0x28) = param_3;" (assignment_expression "*(int *)(puVar26 + -0x28) = param_3" (pointer_expression "*(int *)(puVar26 + -0x28)" (* "*") (cast_expression "(int *)(puVar26 + -0x28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x28)" (( "(") (binary_expression "puVar26 + -0x28" (identifier "puVar26") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(int *)(puVar26 + -0x2c) = param_2;" (assignment_expression "*(int *)(puVar26 + -0x2c) = param_2" (pointer_expression "*(int *)(puVar26 + -0x2c)" (* "*") (cast_expression "(int *)(puVar26 + -0x2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x2c)" (( "(") (binary_expression "puVar26 + -0x2c" (identifier "puVar26") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "param_2")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x30) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x30) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x30)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x30)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x30)" (( "(") (binary_expression "puVar26 + -0x30" (identifier "puVar26") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x34) = 0xa3371;" (assignment_expression "*(undefined4 *)(puVar26 + -0x34) = 0xa3371" (pointer_expression "*(undefined4 *)(puVar26 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x34)" (( "(") (binary_expression "puVar26 + -0x34" (identifier "puVar26") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0xa3371")) (; ";")) (expression_statement "cVar7 = FUN_0009e290();" (assignment_expression "cVar7 = FUN_0009e290()" (identifier "cVar7") (= "=") (call_expression "FUN_0009e290()" (identifier "FUN_0009e290") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_10;" (assignment_expression "pppppppuVar29 = extraout_ECX_10" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_10")) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (if_statement "if (cVar7 == '\0') goto LAB_000a2c3a;" (if "if") (parenthesized_expression "(cVar7 == '\0')" (( "(") (binary_expression "cVar7 == '\0'" (identifier "cVar7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000a2c3a;" (goto "goto") (statement_identifier "LAB_000a2c3a") (; ";"))) (expression_statement "pppppppuVar22 = (uint *******)0x0;" (assignment_expression "pppppppuVar22 = (uint *******)0x0" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_000a2583;" (goto "goto") (statement_identifier "LAB_000a2583") (; ";")) (} "}"))) (labeled_statement "LAB_000a2c18:\n              iVar19 = *(int *)(param_3 + 0x1d0);" (statement_identifier "LAB_000a2c18") (: ":") (expression_statement "iVar19 = *(int *)(param_3 + 0x1d0);" (assignment_expression "iVar19 = *(int *)(param_3 + 0x1d0)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(param_3 + 0x1d0)" (* "*") (cast_expression "(int *)(param_3 + 0x1d0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_3 + 0x1d0)" (( "(") (binary_expression "param_3 + 0x1d0" (identifier "param_3") (+ "+") (number_literal "0x1d0")) () ")"))))) (; ";"))) (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" (identifier "pppppppuVar27") (= "=") (identifier "pppppppuVar29")) (; ";")) (if_statement "if (iVar19 == 0) {\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }\n              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;\n              }" ({ "{") (if_statement "if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;" (if "if") (parenthesized_expression "((char)pppppppuVar22 == '\0')" (( "(") (binary_expression "(char)pppppppuVar22 == '\0'" (cast_expression "(char)pppppppuVar22" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "pppppppuVar22")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000a22b0;" (goto "goto") (statement_identifier "LAB_000a22b0") (; ";"))) (} "}")) (else_clause "else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;" (else "else") (if_statement "if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;" (if "if") (parenthesized_expression "((char)pppppppuVar22 == '\0')" (( "(") (binary_expression "(char)pppppppuVar22 == '\0'" (cast_expression "(char)pppppppuVar22" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "pppppppuVar22")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000a259c;" (goto "goto") (statement_identifier "LAB_000a259c") (; ";"))))) (} "}")))) (labeled_statement "LAB_000a2c3a:\n            local_f0 = pppppppuVar27;" (statement_identifier "LAB_000a2c3a") (: ":") (expression_statement "local_f0 = pppppppuVar27;" (assignment_expression "local_f0 = pppppppuVar27" (identifier "local_f0") (= "=") (identifier "pppppppuVar27")) (; ";"))) (expression_statement "param_1[0xe][(int)local_f0] = (uint *****)0x0;" (assignment_expression "param_1[0xe][(int)local_f0] = (uint *****)0x0" (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]")) (= "=") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]"))) (; ";")) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" (identifier "puVar24") (= "=") (identifier "puVar26")) (; ";")) (} "}")) (else_clause "else {\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }" (else "else") (compound_statement "{\nLAB_000a22b0:\n            puVar24 = puVar26;\n            if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }\n            if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }\n          }" ({ "{") (labeled_statement "LAB_000a22b0:\n            puVar24 = puVar26;" (statement_identifier "LAB_000a22b0") (: ":") (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" (identifier "puVar24") (= "=") (identifier "puVar26")) (; ";"))) (if_statement "if (local_136 != '\0') {\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }" (if "if") (parenthesized_expression "(local_136 != '\0')" (( "(") (binary_expression "local_136 != '\0'" (identifier "local_136") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }\n              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }\n            }" ({ "{") (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }" (if "if") (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" (( "(") (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]")) (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;\n                *(undefined4 *)(puVar26 + -0xc) = 0x5c;\n                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;\n                    \n                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;\n                FUN_0005f0b0();\n              }" ({ "{") (expression_statement "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x5c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa42f6;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa42f6" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa42f6")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }" (if "if") (parenthesized_expression "(*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0')" (( "(") (binary_expression "*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x18b1)" (* "*") (cast_expression "(char *)((int)(*local_13c)[2] + 0x18b1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)(*local_13c)[2] + 0x18b1)" (( "(") (binary_expression "(int)(*local_13c)[2] + 0x18b1" (cast_expression "(int)(*local_13c)[2]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]"))) (+ "+") (number_literal "0x18b1")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                *(uint ********)(puVar26 + -0xc) = local_12c;\n                *(uint ********)(puVar26 + -0x10) = param_1;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;\n                cVar7 = FUN_00091d10();\n                if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }\n                pppppppuVar22 = local_120;\n                pppppppuVar27 = local_12c;\n                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;\n                *(uint ********)(puVar26 + -0x10) = local_12c;\n                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;\n                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));\n                pppppppuVar28 = local_12c;\n                pppppppuVar29 = extraout_ECX;\n                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }\n              }" ({ "{") (expression_statement "*(uint ********)(puVar26 + -0xc) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa22ee;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa22ee" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa22ee")) (; ";")) (expression_statement "cVar7 = FUN_00091d10();" (assignment_expression "cVar7 = FUN_00091d10()" (identifier "cVar7") (= "=") (call_expression "FUN_00091d10()" (identifier "FUN_00091d10") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar7 == '\0') {\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }\n                else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }" (if "if") (parenthesized_expression "(cVar7 == '\0')" (( "(") (binary_expression "cVar7 == '\0'" (identifier "cVar7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                  *(uint ********)(puVar26 + -8) = local_12c;\n                  *(uint ********)(puVar26 + -0xc) = param_1;\n                  *(int *)(puVar26 + -0x10) = param_3;\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;\n                  cVar7 = FUN_0007b5f0();\n                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;\n                }" ({ "{") (expression_statement "*(uint ********)(puVar26 + -8) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -8) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0xc) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(int *)(puVar26 + -0x10) = param_3;" (assignment_expression "*(int *)(puVar26 + -0x10) = param_3" (pointer_expression "*(int *)(puVar26 + -0x10)" (* "*") (cast_expression "(int *)(puVar26 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2313;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2313" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2313")) (; ";")) (expression_statement "cVar7 = FUN_0007b5f0();" (assignment_expression "cVar7 = FUN_0007b5f0()" (identifier "cVar7") (= "=") (call_expression "FUN_0007b5f0()" (identifier "FUN_0007b5f0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))\n                  goto LAB_000a2c68;" (if "if") (parenthesized_expression "((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))" (( "(") (binary_expression "(cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2)" (parenthesized_expression "(cVar7 != '\0')" (( "(") (binary_expression "cVar7 != '\0'" (identifier "cVar7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "((byte *)((int)local_124 + -0xe) < (byte *)0x2)" (( "(") (binary_expression "(byte *)((int)local_124 + -0xe) < (byte *)0x2" (cast_expression "(byte *)((int)local_124 + -0xe)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_124 + -0xe)" (( "(") (binary_expression "(int)local_124 + -0xe" (cast_expression "(int)local_124" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_124")) (+ "+") (number_literal "-0xe")) () ")"))) (< "<") (cast_expression "(byte *)0x2" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x2"))) () ")"))) () ")")) (goto_statement "goto LAB_000a2c68;" (goto "goto") (statement_identifier "LAB_000a2c68") (; ";"))) (} "}")) (else_clause "else {\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }" (else "else") (compound_statement "{\nLAB_000a2c68:\n                  local_84 = param_1;\n                  local_80 = local_f0;\n                  *(uint *********)(puVar26 + -0xc) = &local_84;\n                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);\n                    \n                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;\n                  FUN_000a0800();\n                }" ({ "{") (labeled_statement "LAB_000a2c68:\n                  local_84 = param_1;" (statement_identifier "LAB_000a2c68") (: ":") (expression_statement "local_84 = param_1;" (assignment_expression "local_84 = param_1" (identifier "local_84") (= "=") (identifier "param_1")) (; ";"))) (expression_statement "local_80 = local_f0;" (assignment_expression "local_80 = local_f0" (identifier "local_80") (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint *********)(puVar26 + -0xc) = &local_84;" (assignment_expression "*(uint *********)(puVar26 + -0xc) = &local_84" (pointer_expression "*(uint *********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint *********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "&local_84" (& "&") (identifier "local_84"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158)" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(param_2 + 0x158)" (* "*") (cast_expression "(undefined4 *)(param_2 + 0x158)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x158)" (( "(") (binary_expression "param_2 + 0x158" (identifier "param_2") (+ "+") (number_literal "0x158")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa2c8c" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2c8c")) (; ";")) (expression_statement "FUN_000a0800();" (call_expression "FUN_000a0800()" (identifier "FUN_000a0800") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";")) (expression_statement "pppppppuVar27 = local_12c;" (assignment_expression "pppppppuVar27 = local_12c" (identifier "pppppppuVar27") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae" (pointer_expression "*(uint ********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "local_120 + -0x379ae" (identifier "local_120") (+ "+") (number_literal "-0x379ae"))) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa234c;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa234c" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa234c")) (; ";")) (expression_statement "sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));" (assignment_expression "sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" (identifier "sVar9") (= "=") (call_expression "strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" (identifier "strspn") (argument_list "(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc))" (( "(") (pointer_expression "*(char **)(puVar26 + -0x10)" (* "*") (cast_expression "(char **)(puVar26 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar26 + -0xc)" (* "*") (cast_expression "(char **)(puVar26 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" (identifier "pppppppuVar28") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX;" (assignment_expression "pppppppuVar29 = extraout_ECX" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX")) (; ";")) (if_statement "if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }" (if "if") (parenthesized_expression "(*(byte *)((int)pppppppuVar27 + sVar9) == 0)" (( "(") (binary_expression "*(byte *)((int)pppppppuVar27 + sVar9) == 0" (pointer_expression "*(byte *)((int)pppppppuVar27 + sVar9)" (* "*") (cast_expression "(byte *)((int)pppppppuVar27 + sVar9)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppuVar27 + sVar9)" (( "(") (binary_expression "(int)pppppppuVar27 + sVar9" (cast_expression "(int)pppppppuVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar27")) (+ "+") (identifier "sVar9")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  local_178 = (uint *******)&local_84;\n                  iVar19 = *(int *)(param_2 + 0x158);\n                  *(uint ********)(puVar26 + -0x10) = local_12c;\n                  local_194 = local_7c;\n                  local_19c = iVar19;\n                  local_184 = local_f0;\n                  local_84 = local_7c;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;\n                  sVar9 = strlen(*(char **)(puVar26 + -0x10));\n                  *(undefined4 *)(puVar26 + -4) = 0;\n                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);\n                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;\n                  *(uint ********)(puVar26 + -0x10) = local_178;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;\n                  FUN_0004cf80();\n                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);\n                  local_98 = local_184;\n                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);\n                  local_9c = param_1;\n                  local_18c = pppppppuVar27;\n                  if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }\n                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);\n                  pppppppuVar22 = pppppppuVar27 + 10;\n                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                  *(uint ********)(puVar26 + -4) = local_154;\n                  *(uint *********)(puVar26 + -8) = &local_9c;\n                  *(uint ********)(puVar26 + -0xc) = local_170;\n                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;\n                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;\n                  local_174 = pppppppuVar22;\n                  piVar11 = (int *)FUN_0008bfc0();\n                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }\n                  pppppppuVar27 = local_120;\n                  puVar24 = puVar26;\n                  if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }\n                }" ({ "{") (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" (identifier "local_178") (= "=") (cast_expression "(uint *******)&local_84" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&local_84" (& "&") (identifier "local_84")))) (; ";")) (expression_statement "iVar19 = *(int *)(param_2 + 0x158);" (assignment_expression "iVar19 = *(int *)(param_2 + 0x158)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(param_2 + 0x158)" (* "*") (cast_expression "(int *)(param_2 + 0x158)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x158)" (( "(") (binary_expression "param_2 + 0x158" (identifier "param_2") (+ "+") (number_literal "0x158")) () ")"))))) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "local_194 = local_7c;" (assignment_expression "local_194 = local_7c" (identifier "local_194") (= "=") (identifier "local_7c")) (; ";")) (expression_statement "local_19c = iVar19;" (assignment_expression "local_19c = iVar19" (identifier "local_19c") (= "=") (identifier "iVar19")) (; ";")) (expression_statement "local_184 = local_f0;" (assignment_expression "local_184 = local_f0" (identifier "local_184") (= "=") (identifier "local_f0")) (; ";")) (expression_statement "local_84 = local_7c;" (assignment_expression "local_84 = local_7c" (identifier "local_84") (= "=") (identifier "local_7c")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3075;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3075" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3075")) (; ";")) (expression_statement "sVar9 = strlen(*(char **)(puVar26 + -0x10));" (assignment_expression "sVar9 = strlen(*(char **)(puVar26 + -0x10))" (identifier "sVar9") (= "=") (call_expression "strlen(*(char **)(puVar26 + -0x10))" (identifier "strlen") (argument_list "(*(char **)(puVar26 + -0x10))" (( "(") (pointer_expression "*(char **)(puVar26 + -0x10)" (* "*") (cast_expression "(char **)(puVar26 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar26 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar26 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -4)" (( "(") (binary_expression "puVar26 + -4" (identifier "puVar26") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);" (assignment_expression "*(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28)" (pointer_expression "*(byte **)(puVar26 + -8)" (* "*") (cast_expression "(byte **)(puVar26 + -8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (cast_expression "(byte *)(sVar9 + (int)pppppppuVar28)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(sVar9 + (int)pppppppuVar28)" (( "(") (binary_expression "sVar9 + (int)pppppppuVar28" (identifier "sVar9") (+ "+") (cast_expression "(int)pppppppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar28"))) () ")")))) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0xc) = pppppppuVar28;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = pppppppuVar28" (pointer_expression "*(uint ********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "pppppppuVar28")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_178;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_178" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_178")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3089;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3089" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3089")) (; ";")) (expression_statement "FUN_0004cf80();" (call_expression "FUN_0004cf80()" (identifier "FUN_0004cf80") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);" (assignment_expression "pppppppuVar22 = *(uint ********)(iVar19 + 0x4c)" (identifier "pppppppuVar22") (= "=") (pointer_expression "*(uint ********)(iVar19 + 0x4c)" (* "*") (cast_expression "(uint ********)(iVar19 + 0x4c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(iVar19 + 0x4c)" (( "(") (binary_expression "iVar19 + 0x4c" (identifier "iVar19") (+ "+") (number_literal "0x4c")) () ")"))))) (; ";")) (expression_statement "local_98 = local_184;" (assignment_expression "local_98 = local_184" (identifier "local_98") (= "=") (identifier "local_184")) (; ";")) (expression_statement "pppppppuVar27 = (uint *******)(iVar19 + 0x48);" (assignment_expression "pppppppuVar27 = (uint *******)(iVar19 + 0x48)" (identifier "pppppppuVar27") (= "=") (cast_expression "(uint *******)(iVar19 + 0x48)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar19 + 0x48)" (( "(") (binary_expression "iVar19 + 0x48" (identifier "iVar19") (+ "+") (number_literal "0x48")) () ")")))) (; ";")) (expression_statement "local_9c = param_1;" (assignment_expression "local_9c = param_1" (identifier "local_9c") (= "=") (identifier "param_1")) (; ";")) (expression_statement "local_18c = pppppppuVar27;" (assignment_expression "local_18c = pppppppuVar27" (identifier "local_18c") (= "=") (identifier "pppppppuVar27")) (; ";")) (if_statement "if (pppppppuVar22 == (uint *******)0x0) {\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }\n                  else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }" (if "if") (parenthesized_expression "(pppppppuVar22 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar22 == (uint *******)0x0" (identifier "pppppppuVar22") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;\n                    *(uint *********)(puVar26 + -0x10) = &local_e8;\n                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;\n                    local_e8 = local_178;\n                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;\n                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;\n                    *(uint *********)(puVar26 + -0x20) = local_100;\n                    \n                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;\n                    FUN_000a0360();\n                    puVar26 = puVar26 + -4;\n                    pppppppuVar27 = local_100[0];\n                  }" ({ "{") (labeled_statement "LAB_000a320c:\n                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;" (statement_identifier "LAB_000a320c") (: ":") (expression_statement "*(undefined1 **)(puVar26 + -0xc) = &local_f1;" (assignment_expression "*(undefined1 **)(puVar26 + -0xc) = &local_f1" (pointer_expression "*(undefined1 **)(puVar26 + -0xc)" (* "*") (cast_expression "(undefined1 **)(puVar26 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "&local_f1" (& "&") (identifier "local_f1"))) (; ";"))) (expression_statement "*(uint *********)(puVar26 + -0x10) = &local_e8;" (assignment_expression "*(uint *********)(puVar26 + -0x10) = &local_e8" (pointer_expression "*(uint *********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint *********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_e8" (& "&") (identifier "local_e8"))) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5" (pointer_expression "*(uint ********)(puVar26 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (binary_expression "local_120 + -0x371b5" (identifier "local_120") (+ "+") (number_literal "-0x371b5"))) (; ";")) (expression_statement "local_e8 = local_178;" (assignment_expression "local_e8 = local_178" (identifier "local_e8") (= "=") (identifier "local_178")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x18) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar26 + -0x18) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar26 + -0x18)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x18)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x18)" (( "(") (binary_expression "puVar26 + -0x18" (identifier "puVar26") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "pppppppuVar27")) (; ";")) (expression_statement "*(int *)(puVar26 + -0x1c) = local_19c + 0x44;" (assignment_expression "*(int *)(puVar26 + -0x1c) = local_19c + 0x44" (pointer_expression "*(int *)(puVar26 + -0x1c)" (* "*") (cast_expression "(int *)(puVar26 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x1c)" (( "(") (binary_expression "puVar26 + -0x1c" (identifier "puVar26") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (binary_expression "local_19c + 0x44" (identifier "local_19c") (+ "+") (number_literal "0x44"))) (; ";")) (expression_statement "*(uint *********)(puVar26 + -0x20) = local_100;" (assignment_expression "*(uint *********)(puVar26 + -0x20) = local_100" (pointer_expression "*(uint *********)(puVar26 + -0x20)" (* "*") (cast_expression "(uint *********)(puVar26 + -0x20)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar26 + -0x20)" (( "(") (binary_expression "puVar26 + -0x20" (identifier "puVar26") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_100")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa324d;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa324d" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x24)" (( "(") (binary_expression "puVar26 + -0x24" (identifier "puVar26") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0xa324d")) (; ";")) (expression_statement "FUN_000a0360();" (call_expression "FUN_000a0360()" (identifier "FUN_000a0360") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar26 = puVar26 + -4;" (assignment_expression "puVar26 = puVar26 + -4" (identifier "puVar26") (= "=") (binary_expression "puVar26 + -4" (identifier "puVar26") (+ "+") (number_literal "-4"))) (; ";")) (expression_statement "pppppppuVar27 = local_100[0];" (assignment_expression "pppppppuVar27 = local_100[0]" (identifier "pppppppuVar27") (= "=") (subscript_expression "local_100[0]" (identifier "local_100") ([ "[") (number_literal "0") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }" (else "else") (compound_statement "{\n                    local_170 = local_84;\n                    local_174 = pppppppuVar27;\n                    local_154 = local_80;\nLAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);\n                    pppppppuVar27 = local_174;\n                    if (local_18c == local_174) goto LAB_000a320c;\n                    pppppppuVar22 = (uint *******)local_174[5];\n                    pppppppuVar29 = pppppppuVar22;\n                    if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }\n                    if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }\n                    if (iVar19 < 0) goto LAB_000a320c;\n                  }" ({ "{") (expression_statement "local_170 = local_84;" (assignment_expression "local_170 = local_84" (identifier "local_170") (= "=") (identifier "local_84")) (; ";")) (expression_statement "local_174 = pppppppuVar27;" (assignment_expression "local_174 = pppppppuVar27" (identifier "local_174") (= "=") (identifier "pppppppuVar27")) (; ";")) (expression_statement "local_154 = local_80;" (assignment_expression "local_154 = local_80" (identifier "local_154") (= "=") (identifier "local_80")) (; ";")) (labeled_statement "LAB_000a30e5:\n                    do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);" (statement_identifier "LAB_000a30e5") (: ":") (do_statement "do {\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    } while (pppppppuVar22 != (uint *******)0x0);" (do "do") (compound_statement "{\n                      pppppppuVar29 = (uint *******)pppppppuVar22[5];\n                      pppppppuVar27 = local_154;\n                      if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }\n                      if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }\n                      if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }\n                      pppppppuVar22 = (uint *******)pppppppuVar22[3];\n                    }" ({ "{") (expression_statement "pppppppuVar29 = (uint *******)pppppppuVar22[5];" (assignment_expression "pppppppuVar29 = (uint *******)pppppppuVar22[5]" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)pppppppuVar22[5]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppuVar22[5]" (identifier "pppppppuVar22") ([ "[") (number_literal "5") (] "]")))) (; ";")) (expression_statement "pppppppuVar27 = local_154;" (assignment_expression "pppppppuVar27 = local_154" (identifier "pppppppuVar27") (= "=") (identifier "local_154")) (; ";")) (if_statement "if (pppppppuVar29 <= local_154) {\n                        pppppppuVar27 = pppppppuVar29;\n                      }" (if "if") (parenthesized_expression "(pppppppuVar29 <= local_154)" (( "(") (binary_expression "pppppppuVar29 <= local_154" (identifier "pppppppuVar29") (<= "<=") (identifier "local_154")) () ")")) (compound_statement "{\n                        pppppppuVar27 = pppppppuVar29;\n                      }" ({ "{") (expression_statement "pppppppuVar27 = pppppppuVar29;" (assignment_expression "pppppppuVar27 = pppppppuVar29" (identifier "pppppppuVar27") (= "=") (identifier "pppppppuVar29")) (; ";")) (} "}"))) (if_statement "if (pppppppuVar27 == (uint *******)0x0) {\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }\n                      else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }" (if "if") (parenthesized_expression "(pppppppuVar27 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar27 == (uint *******)0x0" (identifier "pppppppuVar27") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;\n                      }" ({ "{") (labeled_statement "LAB_000a3116:\n                        iVar19 = (int)pppppppuVar29 - (int)local_154;" (statement_identifier "LAB_000a3116") (: ":") (expression_statement "iVar19 = (int)pppppppuVar29 - (int)local_154;" (assignment_expression "iVar19 = (int)pppppppuVar29 - (int)local_154" (identifier "iVar19") (= "=") (binary_expression "(int)pppppppuVar29 - (int)local_154" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (- "-") (cast_expression "(int)local_154" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_154")))) (; ";"))) (} "}")) (else_clause "else {\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }" (else "else") (compound_statement "{\n                        *(uint ********)(puVar26 + -8) = pppppppuVar27;\n                        *(uint ********)(puVar26 + -0xc) = local_170;\n                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];\n                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;\n                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));\n                        if (iVar19 == 0) goto LAB_000a3116;\n                      }" ({ "{") (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar27;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar27" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "pppppppuVar27")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_170;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_170" (pointer_expression "*(uint ********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_170")) (; ";")) (expression_statement "*(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];" (assignment_expression "*(uint *******)(puVar26 + -0x10) = pppppppuVar22[4]" (pointer_expression "*(uint *******)(puVar26 + -0x10)" (* "*") (cast_expression "(uint *******)(puVar26 + -0x10)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "pppppppuVar22[4]" (identifier "pppppppuVar22") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa310f;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa310f" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa310f")) (; ";")) (expression_statement "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8));" (assignment_expression "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8))" (identifier "iVar19") (= "=") (call_expression "memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8))" (identifier "memcmp") (argument_list "(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                        *(size_t *)(puVar26 + -8))" (( "(") (pointer_expression "*(void **)(puVar26 + -0x10)" (* "*") (cast_expression "(void **)(puVar26 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(void **)(puVar26 + -0xc)" (* "*") (cast_expression "(void **)(puVar26 + -0xc)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(size_t *)(puVar26 + -8)" (* "*") (cast_expression "(size_t *)(puVar26 + -8)" (( "(") (type_descriptor "size_t *" (primitive_type "size_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar19 == 0) goto LAB_000a3116;" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000a3116;" (goto "goto") (statement_identifier "LAB_000a3116") (; ";"))) (} "}")))) (if_statement "if (-1 < iVar19) {\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }" (if "if") (parenthesized_expression "(-1 < iVar19)" (( "(") (binary_expression "-1 < iVar19" (number_literal "-1") (< "<") (identifier "iVar19")) () ")")) (compound_statement "{\n                        local_174 = pppppppuVar22;\n                        pppppppuVar22 = (uint *******)pppppppuVar22[2];\n                        if (pppppppuVar22 == (uint *******)0x0) break;\n                        goto LAB_000a30e5;\n                      }" ({ "{") (expression_statement "local_174 = pppppppuVar22;" (assignment_expression "local_174 = pppppppuVar22" (identifier "local_174") (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)pppppppuVar22[2];" (assignment_expression "pppppppuVar22 = (uint *******)pppppppuVar22[2]" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)pppppppuVar22[2]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppuVar22[2]" (identifier "pppppppuVar22") ([ "[") (number_literal "2") (] "]")))) (; ";")) (if_statement "if (pppppppuVar22 == (uint *******)0x0) break;" (if "if") (parenthesized_expression "(pppppppuVar22 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar22 == (uint *******)0x0" (identifier "pppppppuVar22") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (goto_statement "goto LAB_000a30e5;" (goto "goto") (statement_identifier "LAB_000a30e5") (; ";")) (} "}"))) (expression_statement "pppppppuVar22 = (uint *******)pppppppuVar22[3];" (assignment_expression "pppppppuVar22 = (uint *******)pppppppuVar22[3]" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)pppppppuVar22[3]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppuVar22[3]" (identifier "pppppppuVar22") ([ "[") (number_literal "3") (] "]")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pppppppuVar22 != (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar22 != (uint *******)0x0" (identifier "pppppppuVar22") (!= "!=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (; ";"))) (expression_statement "pppppppuVar27 = local_174;" (assignment_expression "pppppppuVar27 = local_174" (identifier "pppppppuVar27") (= "=") (identifier "local_174")) (; ";")) (if_statement "if (local_18c == local_174) goto LAB_000a320c;" (if "if") (parenthesized_expression "(local_18c == local_174)" (( "(") (binary_expression "local_18c == local_174" (identifier "local_18c") (== "==") (identifier "local_174")) () ")")) (goto_statement "goto LAB_000a320c;" (goto "goto") (statement_identifier "LAB_000a320c") (; ";"))) (expression_statement "pppppppuVar22 = (uint *******)local_174[5];" (assignment_expression "pppppppuVar22 = (uint *******)local_174[5]" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)local_174[5]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_174[5]" (identifier "local_174") ([ "[") (number_literal "5") (] "]")))) (; ";")) (expression_statement "pppppppuVar29 = pppppppuVar22;" (assignment_expression "pppppppuVar29 = pppppppuVar22" (identifier "pppppppuVar29") (= "=") (identifier "pppppppuVar22")) (; ";")) (if_statement "if (local_154 <= pppppppuVar22) {\n                      pppppppuVar29 = local_154;\n                    }" (if "if") (parenthesized_expression "(local_154 <= pppppppuVar22)" (( "(") (binary_expression "local_154 <= pppppppuVar22" (identifier "local_154") (<= "<=") (identifier "pppppppuVar22")) () ")")) (compound_statement "{\n                      pppppppuVar29 = local_154;\n                    }" ({ "{") (expression_statement "pppppppuVar29 = local_154;" (assignment_expression "pppppppuVar29 = local_154" (identifier "pppppppuVar29") (= "=") (identifier "local_154")) (; ";")) (} "}"))) (if_statement "if (pppppppuVar29 == (uint *******)0x0) {\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }\n                    else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }" (if "if") (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar29 == (uint *******)0x0" (identifier "pppppppuVar29") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;\n                    }" ({ "{") (labeled_statement "LAB_000a3174:\n                      iVar19 = (int)local_154 - (int)pppppppuVar22;" (statement_identifier "LAB_000a3174") (: ":") (expression_statement "iVar19 = (int)local_154 - (int)pppppppuVar22;" (assignment_expression "iVar19 = (int)local_154 - (int)pppppppuVar22" (identifier "iVar19") (= "=") (binary_expression "(int)local_154 - (int)pppppppuVar22" (cast_expression "(int)local_154" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_154")) (- "-") (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")))) (; ";"))) (} "}")) (else_clause "else {\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }" (else "else") (compound_statement "{\n                      *(uint ********)(puVar26 + -8) = pppppppuVar29;\n                      *(uint *******)(puVar26 + -0xc) = local_174[4];\n                      *(uint ********)(puVar26 + -0x10) = local_170;\n                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;\n                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));\n                      if (iVar19 == 0) goto LAB_000a3174;\n                    }" ({ "{") (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "pppppppuVar29")) (; ";")) (expression_statement "*(uint *******)(puVar26 + -0xc) = local_174[4];" (assignment_expression "*(uint *******)(puVar26 + -0xc) = local_174[4]" (pointer_expression "*(uint *******)(puVar26 + -0xc)" (* "*") (cast_expression "(uint *******)(puVar26 + -0xc)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (subscript_expression "local_174[4]" (identifier "local_174") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_170;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_170" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_170")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3167;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3167" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3167")) (; ";")) (expression_statement "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8));" (assignment_expression "iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8))" (identifier "iVar19") (= "=") (call_expression "memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8))" (identifier "memcmp") (argument_list "(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),\n                                      *(size_t *)(puVar26 + -8))" (( "(") (pointer_expression "*(void **)(puVar26 + -0x10)" (* "*") (cast_expression "(void **)(puVar26 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(void **)(puVar26 + -0xc)" (* "*") (cast_expression "(void **)(puVar26 + -0xc)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(size_t *)(puVar26 + -8)" (* "*") (cast_expression "(size_t *)(puVar26 + -8)" (( "(") (type_descriptor "size_t *" (primitive_type "size_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar19 == 0) goto LAB_000a3174;" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000a3174;" (goto "goto") (statement_identifier "LAB_000a3174") (; ";"))) (} "}")))) (if_statement "if (iVar19 < 0) goto LAB_000a320c;" (if "if") (parenthesized_expression "(iVar19 < 0)" (( "(") (binary_expression "iVar19 < 0" (identifier "iVar19") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_000a320c;" (goto "goto") (statement_identifier "LAB_000a320c") (; ";"))) (} "}")))) (expression_statement "local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);" (assignment_expression "local_154 = (uint *******)((uint)local_184 ^ (uint)param_1)" (identifier "local_154") (= "=") (cast_expression "(uint *******)((uint)local_184 ^ (uint)param_1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((uint)local_184 ^ (uint)param_1)" (( "(") (binary_expression "(uint)local_184 ^ (uint)param_1" (cast_expression "(uint)local_184" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_184")) (^ "^") (cast_expression "(uint)param_1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_1"))) () ")")))) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar27 + 10;" (assignment_expression "pppppppuVar22 = pppppppuVar27 + 10" (identifier "pppppppuVar22") (= "=") (binary_expression "pppppppuVar27 + 10" (identifier "pppppppuVar27") (+ "+") (number_literal "10"))) (; ";")) (expression_statement "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);" (assignment_expression "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" (identifier "local_170") (= "=") (cast_expression "(uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((uint)local_154 % (uint)pppppppuVar27[0xb])" (( "(") (binary_expression "(uint)local_154 % (uint)pppppppuVar27[0xb]" (cast_expression "(uint)local_154" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_154")) (% "%") (cast_expression "(uint)pppppppuVar27[0xb]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "pppppppuVar27[0xb]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xb") (] "]")))) () ")")))) (; ";")) (expression_statement "*(uint ********)(puVar26 + -4) = local_154;" (assignment_expression "*(uint ********)(puVar26 + -4) = local_154" (pointer_expression "*(uint ********)(puVar26 + -4)" (* "*") (cast_expression "(uint ********)(puVar26 + -4)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -4)" (( "(") (binary_expression "puVar26 + -4" (identifier "puVar26") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "local_154")) (; ";")) (expression_statement "*(uint *********)(puVar26 + -8) = &local_9c;" (assignment_expression "*(uint *********)(puVar26 + -8) = &local_9c" (pointer_expression "*(uint *********)(puVar26 + -8)" (* "*") (cast_expression "(uint *********)(puVar26 + -8)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_9c" (& "&") (identifier "local_9c"))) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0xc) = local_170;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = local_170" (pointer_expression "*(uint ********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_170")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa31b4;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa31b4" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa31b4")) (; ";")) (expression_statement "local_174 = pppppppuVar22;" (assignment_expression "local_174 = pppppppuVar22" (identifier "local_174") (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "piVar11 = (int *)FUN_0008bfc0();" (assignment_expression "piVar11 = (int *)FUN_0008bfc0()" (identifier "piVar11") (= "=") (cast_expression "(int *)FUN_0008bfc0()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0008bfc0()" (identifier "FUN_0008bfc0") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }" (if "if") (parenthesized_expression "((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0))" (( "(") (binary_expression "(piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)" (parenthesized_expression "(piVar11 == (int *)0x0)" (( "(") (binary_expression "piVar11 == (int *)0x0" (identifier "piVar11") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)" (( "(") (comma_expression "pppppppuVar29 = extraout_ECX_07, *piVar11 == 0" (assignment_expression "pppppppuVar29 = extraout_ECX_07" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_07")) (, ",") (binary_expression "*piVar11 == 0" (pointer_expression "*piVar11" (* "*") (identifier "piVar11")) (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n                    *(undefined4 *)(puVar26 + -0x10) = 0x10;\n                    \n                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;\n                    ppppppuVar21 = (uint ******)FUN_0017ebf0();\n                    *ppppppuVar21 = (uint *****)0x0;\n                    ppppppuVar21[1] = (uint *****)param_1;\n                    ppppppuVar21[2] = (uint *****)local_184;\n                    local_e4 = pppppppuVar27[0xf];\n                    *(undefined4 *)(puVar26 + -0x10) = 1;\n                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];\n                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];\n                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;\n                    *(char **)(puVar26 + -0x20) = local_10c;\n                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;\n                    FUN_001c5e50();\n                    pppppppuVar29 = extraout_ECX_09;\n                    if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }\n                    puVar26 = puVar26 + -4;\n                    ppppppuVar21[3] = (uint *****)local_154;\n                    pppppppuVar22 = (uint *******)((int)local_170 * 4);\n                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }\n                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);\n                  }" ({ "{") (expression_statement "*(undefined4 *)(puVar26 + -0x10) = 0x10;" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = 0x10" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0x10")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa32a8;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa32a8" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa32a8")) (; ";")) (expression_statement "ppppppuVar21 = (uint ******)FUN_0017ebf0();" (assignment_expression "ppppppuVar21 = (uint ******)FUN_0017ebf0()" (identifier "ppppppuVar21") (= "=") (cast_expression "(uint ******)FUN_0017ebf0()" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (call_expression "FUN_0017ebf0()" (identifier "FUN_0017ebf0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*ppppppuVar21 = (uint *****)0x0;" (assignment_expression "*ppppppuVar21 = (uint *****)0x0" (pointer_expression "*ppppppuVar21" (* "*") (identifier "ppppppuVar21")) (= "=") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppppuVar21[1] = (uint *****)param_1;" (assignment_expression "ppppppuVar21[1] = (uint *****)param_1" (subscript_expression "ppppppuVar21[1]" (identifier "ppppppuVar21") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(uint *****)param_1" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (identifier "param_1"))) (; ";")) (expression_statement "ppppppuVar21[2] = (uint *****)local_184;" (assignment_expression "ppppppuVar21[2] = (uint *****)local_184" (subscript_expression "ppppppuVar21[2]" (identifier "ppppppuVar21") ([ "[") (number_literal "2") (] "]")) (= "=") (cast_expression "(uint *****)local_184" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (identifier "local_184"))) (; ";")) (expression_statement "local_e4 = pppppppuVar27[0xf];" (assignment_expression "local_e4 = pppppppuVar27[0xf]" (identifier "local_e4") (= "=") (subscript_expression "pppppppuVar27[0xf]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xf") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];" (assignment_expression "*(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd]" (pointer_expression "*(uint *******)(puVar26 + -0x14)" (* "*") (cast_expression "(uint *******)(puVar26 + -0x14)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (subscript_expression "pppppppuVar27[0xd]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xd") (] "]"))) (; ";")) (expression_statement "*(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];" (assignment_expression "*(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb]" (pointer_expression "*(uint *******)(puVar26 + -0x18)" (* "*") (cast_expression "(uint *******)(puVar26 + -0x18)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar26 + -0x18)" (( "(") (binary_expression "puVar26 + -0x18" (identifier "puVar26") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (subscript_expression "pppppppuVar27[0xb]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xb") (] "]"))) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;" (assignment_expression "*(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe" (pointer_expression "*(uint ********)(puVar26 + -0x1c)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x1c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x1c)" (( "(") (binary_expression "puVar26 + -0x1c" (identifier "puVar26") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (binary_expression "pppppppuVar27 + 0xe" (identifier "pppppppuVar27") (+ "+") (number_literal "0xe"))) (; ";")) (expression_statement "*(char **)(puVar26 + -0x20) = local_10c;" (assignment_expression "*(char **)(puVar26 + -0x20) = local_10c" (pointer_expression "*(char **)(puVar26 + -0x20)" (* "*") (cast_expression "(char **)(puVar26 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar26 + -0x20)" (( "(") (binary_expression "puVar26 + -0x20" (identifier "puVar26") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_10c")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x24) = 0xa32eb;" (assignment_expression "*(undefined4 *)(puVar26 + -0x24) = 0xa32eb" (pointer_expression "*(undefined4 *)(puVar26 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x24)" (( "(") (binary_expression "puVar26 + -0x24" (identifier "puVar26") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0xa32eb")) (; ";")) (expression_statement "FUN_001c5e50();" (call_expression "FUN_001c5e50()" (identifier "FUN_001c5e50") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_09;" (assignment_expression "pppppppuVar29 = extraout_ECX_09" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_09")) (; ";")) (if_statement "if (local_10c[0] != '\0') {\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }" (if "if") (parenthesized_expression "(local_10c[0] != '\0')" (( "(") (binary_expression "local_10c[0] != '\0'" (subscript_expression "local_10c[0]" (identifier "local_10c") ([ "[") (number_literal "0") (] "]")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                      *(uint ********)(puVar26 + -0xc) = &local_e4;\n                      *(undefined4 *)(puVar26 + -0x10) = local_108;\n                      *(uint ********)(puVar26 + -0x14) = local_174;\n                    \n                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;\n                      FUN_0008f5f0();\n                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);\n                      pppppppuVar29 = extraout_ECX_12;\n                    }" ({ "{") (expression_statement "*(uint ********)(puVar26 + -0xc) = &local_e4;" (assignment_expression "*(uint ********)(puVar26 + -0xc) = &local_e4" (pointer_expression "*(uint ********)(puVar26 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar26 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "&local_e4" (& "&") (identifier "local_e4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x10) = local_108;" (assignment_expression "*(undefined4 *)(puVar26 + -0x10) = local_108" (pointer_expression "*(undefined4 *)(puVar26 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_108")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x14) = local_174;" (assignment_expression "*(uint ********)(puVar26 + -0x14) = local_174" (pointer_expression "*(uint ********)(puVar26 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_174")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x18) = 0xa3696;" (assignment_expression "*(undefined4 *)(puVar26 + -0x18) = 0xa3696" (pointer_expression "*(undefined4 *)(puVar26 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x18)" (( "(") (binary_expression "puVar26 + -0x18" (identifier "puVar26") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0xa3696")) (; ";")) (expression_statement "FUN_0008f5f0();" (call_expression "FUN_0008f5f0()" (identifier "FUN_0008f5f0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);" (assignment_expression "local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" (identifier "local_170") (= "=") (cast_expression "(uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb])" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((uint)local_154 % (uint)pppppppuVar27[0xb])" (( "(") (binary_expression "(uint)local_154 % (uint)pppppppuVar27[0xb]" (cast_expression "(uint)local_154" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_154")) (% "%") (cast_expression "(uint)pppppppuVar27[0xb]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "pppppppuVar27[0xb]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xb") (] "]")))) () ")")))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_12;" (assignment_expression "pppppppuVar29 = extraout_ECX_12" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_12")) (; ";")) (} "}"))) (expression_statement "puVar26 = puVar26 + -4;" (assignment_expression "puVar26 = puVar26 + -4" (identifier "puVar26") (= "=") (binary_expression "puVar26 + -4" (identifier "puVar26") (+ "+") (number_literal "-4"))) (; ";")) (expression_statement "ppppppuVar21[3] = (uint *****)local_154;" (assignment_expression "ppppppuVar21[3] = (uint *****)local_154" (subscript_expression "ppppppuVar21[3]" (identifier "ppppppuVar21") ([ "[") (number_literal "3") (] "]")) (= "=") (cast_expression "(uint *****)local_154" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (identifier "local_154"))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)((int)local_170 * 4);" (assignment_expression "pppppppuVar22 = (uint *******)((int)local_170 * 4)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)((int)local_170 * 4)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)local_170 * 4)" (( "(") (binary_expression "(int)local_170 * 4" (cast_expression "(int)local_170" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_170")) (* "*") (number_literal "4")) () ")")))) (; ";")) (if_statement "if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }" (if "if") (parenthesized_expression "(pppppppuVar27[10][(int)local_170] == (uint *****)0x0)" (( "(") (binary_expression "pppppppuVar27[10][(int)local_170] == (uint *****)0x0" (subscript_expression "pppppppuVar27[10][(int)local_170]" (subscript_expression "pppppppuVar27[10]" (identifier "pppppppuVar27") ([ "[") (number_literal "10") (] "]")) ([ "[") (cast_expression "(int)local_170" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_170")) (] "]")) (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];\n                      pppppppuVar29 = (uint *******)pppppppuVar27[10];\n                      pppppppuVar27[0xc] = ppppppuVar21;\n                      if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }\n                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);\n                    }" ({ "{") (expression_statement "*ppppppuVar21 = (uint *****)pppppppuVar27[0xc];" (assignment_expression "*ppppppuVar21 = (uint *****)pppppppuVar27[0xc]" (pointer_expression "*ppppppuVar21" (* "*") (identifier "ppppppuVar21")) (= "=") (cast_expression "(uint *****)pppppppuVar27[0xc]" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (subscript_expression "pppppppuVar27[0xc]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xc") (] "]")))) (; ";")) (expression_statement "pppppppuVar29 = (uint *******)pppppppuVar27[10];" (assignment_expression "pppppppuVar29 = (uint *******)pppppppuVar27[10]" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)pppppppuVar27[10]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppuVar27[10]" (identifier "pppppppuVar27") ([ "[") (number_literal "10") (] "]")))) (; ";")) (expression_statement "pppppppuVar27[0xc] = ppppppuVar21;" (assignment_expression "pppppppuVar27[0xc] = ppppppuVar21" (subscript_expression "pppppppuVar27[0xc]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "ppppppuVar21")) (; ";")) (if_statement "if (*ppppppuVar21 != (uint *****)0x0) {\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }" (if "if") (parenthesized_expression "(*ppppppuVar21 != (uint *****)0x0)" (( "(") (binary_expression "*ppppppuVar21 != (uint *****)0x0" (pointer_expression "*ppppppuVar21" (* "*") (identifier "ppppppuVar21")) (!= "!=") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;\n                      }" ({ "{") (expression_statement "pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21;" (assignment_expression "pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =\n                             ppppppuVar21" (subscript_expression "pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]]" (identifier "pppppppuVar29") ([ "[") (binary_expression "(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]" (subscript_expression "(uint)(*ppppppuVar21)[3]" (call_expression "(uint)(*ppppppuVar21)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*ppppppuVar21)" (( "(") (pointer_expression "*ppppppuVar21" (* "*") (identifier "ppppppuVar21")) () ")"))) ([ "[") (number_literal "3") (] "]")) (% "%") (cast_expression "(uint)pppppppuVar27[0xb]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "pppppppuVar27[0xb]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xb") (] "]")))) (] "]")) (= "=") (identifier "ppppppuVar21")) (; ";")) (} "}"))) (expression_statement "pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);" (assignment_expression "pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc)" (subscript_expression "pppppppuVar29[(int)local_170]" (identifier "pppppppuVar29") ([ "[") (cast_expression "(int)local_170" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_170")) (] "]")) (= "=") (cast_expression "(uint ******)(pppppppuVar27 + 0xc)" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(pppppppuVar27 + 0xc)" (( "(") (binary_expression "pppppppuVar27 + 0xc" (identifier "pppppppuVar27") (+ "+") (number_literal "0xc")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }" (else "else") (compound_statement "{\n                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];\n                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;\n                    }" ({ "{") (expression_statement "*ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];" (assignment_expression "*ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170]" (pointer_expression "*ppppppuVar21" (* "*") (identifier "ppppppuVar21")) (= "=") (cast_expression "(uint *****)*pppppppuVar27[10][(int)local_170]" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (pointer_expression "*pppppppuVar27[10][(int)local_170]" (* "*") (subscript_expression "pppppppuVar27[10][(int)local_170]" (subscript_expression "pppppppuVar27[10]" (identifier "pppppppuVar27") ([ "[") (number_literal "10") (] "]")) ([ "[") (cast_expression "(int)local_170" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_170")) (] "]"))))) (; ";")) (expression_statement "*pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;" (assignment_expression "*pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21" (pointer_expression "*pppppppuVar27[10][(int)local_170]" (* "*") (subscript_expression "pppppppuVar27[10][(int)local_170]" (subscript_expression "pppppppuVar27[10]" (identifier "pppppppuVar27") ([ "[") (number_literal "10") (] "]")) ([ "[") (cast_expression "(int)local_170" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_170")) (] "]"))) (= "=") (cast_expression "(uint ****)ppppppuVar21" (( "(") (type_descriptor "uint ****" (type_identifier "uint") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (identifier "ppppppuVar21"))) (; ";")) (} "}")))) (expression_statement "pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);" (assignment_expression "pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1)" (subscript_expression "pppppppuVar27[0xd]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xd") (] "]")) (= "=") (cast_expression "(uint ******)((int)pppppppuVar27[0xd] + 1)" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)pppppppuVar27[0xd] + 1)" (( "(") (binary_expression "(int)pppppppuVar27[0xd] + 1" (cast_expression "(int)pppppppuVar27[0xd]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "pppppppuVar27[0xd]" (identifier "pppppppuVar27") ([ "[") (number_literal "0xd") (] "]"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}"))) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" (identifier "pppppppuVar27") (= "=") (identifier "local_120")) (; ";")) (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" (identifier "puVar24") (= "=") (identifier "puVar26")) (; ";")) (if_statement "if (local_84 != local_194) {\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }" (if "if") (parenthesized_expression "(local_84 != local_194)" (( "(") (binary_expression "local_84 != local_194" (identifier "local_84") (!= "!=") (identifier "local_194")) () ")")) (compound_statement "{\n                    *(uint ********)(puVar26 + -0x10) = local_84;\n                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;\n                    FUN_001807a0();\n                    pppppppuVar29 = extraout_ECX_08;\n                    pppppppuVar22 = pppppppuVar27;\n                  }" ({ "{") (expression_statement "*(uint ********)(puVar26 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_84")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa31e7;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa31e7" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa31e7")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_08;" (assignment_expression "pppppppuVar29 = extraout_ECX_08" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_08")) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" (identifier "pppppppuVar22") (= "=") (identifier "pppppppuVar27")) (; ";")) (} "}"))) (} "}"))) (} "}"))) (} "}"))) (if_statement "if (((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }\n            else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" (if "if") (parenthesized_expression "(((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4))))" (( "(") (binary_expression "((char)local_14c == '\0') ||\n               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))" (parenthesized_expression "((char)local_14c == '\0')" (( "(") (binary_expression "(char)local_14c == '\0'" (cast_expression "(char)local_14c" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_14c")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))" (( "(") (parenthesized_expression "(local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4))" (( "(") (binary_expression "local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)" (binary_expression "local_124 != (uint *******)0x9" (identifier "local_124") (!= "!=") (cast_expression "(uint *******)0x9" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x9"))) (&& "&&") (parenthesized_expression "(local_124 != (uint *******)0x4)" (( "(") (binary_expression "local_124 != (uint *******)0x4" (identifier "local_124") (!= "!=") (cast_expression "(uint *******)0x4" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x4"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }\n            }" ({ "{") (if_statement "if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }" (if "if") (parenthesized_expression "((local_124 != (uint *******)0x11) || ((char)local_140 == '\0'))" (( "(") (binary_expression "(local_124 != (uint *******)0x11) || ((char)local_140 == '\0')" (parenthesized_expression "(local_124 != (uint *******)0x11)" (( "(") (binary_expression "local_124 != (uint *******)0x11" (identifier "local_124") (!= "!=") (cast_expression "(uint *******)0x11" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x11"))) () ")")) (|| "||") (parenthesized_expression "((char)local_140 == '\0')" (( "(") (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_140")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                local_154 = (uint *******)&local_ec;\n                *(uint ********)(puVar24 + -0xc) = local_154;\n                *(uint ********)(puVar24 + -0x10) = param_1;\n                    \n                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;\n                cVar7 = FUN_000964f0();\n                pppppppuVar27 = local_f0;\n                bVar33 = false;\n                bVar35 = cVar7 == '\0';\n                pppppppuVar29 = extraout_ECX_03;\n                if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }\n                puVar23 = puVar24;\n                if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }\n              }" ({ "{") (expression_statement "local_154 = (uint *******)&local_ec;" (assignment_expression "local_154 = (uint *******)&local_ec" (identifier "local_154") (= "=") (cast_expression "(uint *******)&local_ec" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&local_ec" (& "&") (identifier "local_ec")))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_154;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_154" (pointer_expression "*(uint ********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_154")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa29c8;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa29c8" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa29c8")) (; ";")) (expression_statement "cVar7 = FUN_000964f0();" (assignment_expression "cVar7 = FUN_000964f0()" (identifier "cVar7") (= "=") (call_expression "FUN_000964f0()" (identifier "FUN_000964f0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" (identifier "bVar33") (= "=") (false "false")) (; ";")) (expression_statement "bVar35 = cVar7 == '\0';" (assignment_expression "bVar35 = cVar7 == '\0'" (identifier "bVar35") (= "=") (binary_expression "cVar7 == '\0'" (identifier "cVar7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_03;" (assignment_expression "pppppppuVar29 = extraout_ECX_03" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_03")) (; ";")) (if_statement "if (!bVar35) {\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }" (if "if") (parenthesized_expression "(!bVar35)" (( "(") (unary_expression "!bVar35" (! "!") (identifier "bVar35")) () ")")) (compound_statement "{\n                  pppppppuVar29 = (uint *******)0xa;\n                  pppppppuVar28 = local_12c;\n                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);\n                  do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);\n                  if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }\n                }" ({ "{") (expression_statement "pppppppuVar29 = (uint *******)0xa;" (assignment_expression "pppppppuVar29 = (uint *******)0xa" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)0xa" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xa"))) (; ";")) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" (identifier "pppppppuVar28") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdef3a);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdef3a)" (identifier "pbVar31") (= "=") (cast_expression "(byte *)((int)local_120 + -0xdef3a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_120 + -0xdef3a)" (( "(") (binary_expression "(int)local_120 + -0xdef3a" (cast_expression "(int)local_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_120")) (+ "+") (number_literal "-0xdef3a")) () ")")))) (; ";")) (do_statement "do {\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  } while (bVar35);" (do "do") (compound_statement "{\n                    if (pppppppuVar29 == (uint *******)0x0) break;\n                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                  }" ({ "{") (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" (if "if") (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar29 == (uint *******)0x0" (identifier "pppppppuVar29") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar29 + -1)" (( "(") (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (expression_statement "bVar33 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 < *pbVar31" (identifier "bVar33") (= "=") (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (< "<") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "bVar35 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar28 == *pbVar31" (identifier "bVar35") (= "=") (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (== "==") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar28") (= "=") (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar28")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" (identifier "pbVar31") (= "=") (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" (identifier "pbVar31") (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar35)" (( "(") (identifier "bVar35") () ")")) (; ";")) (if_statement "if ((!bVar33 && !bVar35) == bVar33) {\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }" (if "if") (parenthesized_expression "((!bVar33 && !bVar35) == bVar33)" (( "(") (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" (( "(") (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" (! "!") (identifier "bVar33")) (&& "&&") (unary_expression "!bVar35" (! "!") (identifier "bVar35"))) () ")")) (== "==") (identifier "bVar33")) () ")")) (compound_statement "{\n                    if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    local_124 = local_198;\n                  }" ({ "{") (if_statement "if ((char)local_140 == '\0') {\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }" (if "if") (parenthesized_expression "((char)local_140 == '\0')" (( "(") (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_140")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                      if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }\n                      goto LAB_000a23a1;\n                    }" ({ "{") (if_statement "if (local_136 == '\0') {\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }\n                      else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }" (if "if") (parenthesized_expression "(local_136 == '\0')" (( "(") (binary_expression "local_136 == '\0'" (identifier "local_136") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                        if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }\n                      }" ({ "{") (if_statement "if (*(byte *)((int)param_1 + 0x11d) == 0) {\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }\n                        else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }" (if "if") (parenthesized_expression "(*(byte *)((int)param_1 + 0x11d) == 0)" (( "(") (binary_expression "*(byte *)((int)param_1 + 0x11d) == 0" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" (* "*") (cast_expression "(byte *)((int)param_1 + 0x11d)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_1 + 0x11d)" (( "(") (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "0x11d")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                          if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }\n                          *local_d0 = (int)local_f0;\n                          local_d0 = local_d0 + 1;\n                        }" ({ "{") (if_statement "if (local_d0 == local_cc) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }" (if "if") (parenthesized_expression "(local_d0 == local_cc)" (( "(") (binary_expression "local_d0 == local_cc" (identifier "local_d0") (== "==") (identifier "local_cc")) () ")")) (compound_statement "{\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_d0;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_d4;\n                    \n                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_29;\n                            goto LAB_000a3e57;\n                          }" ({ "{") (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" (* "*") (cast_expression "(uint *********)(puVar24 + -8)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_f0" (& "&") (identifier "local_f0"))) (; ";")) (expression_statement "*(int **)(puVar24 + -0xc) = local_d0;" (assignment_expression "*(int **)(puVar24 + -0xc) = local_d0" (pointer_expression "*(int **)(puVar24 + -0xc)" (* "*") (cast_expression "(int **)(puVar24 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_d0")) (; ";")) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" (identifier "puVar25") (= "=") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10"))) (; ";")) (expression_statement "*(int ***)(puVar24 + -0x10) = &local_d4;" (assignment_expression "*(int ***)(puVar24 + -0x10) = &local_d4" (pointer_expression "*(int ***)(puVar24 + -0x10)" (* "*") (cast_expression "(int ***)(puVar24 + -0x10)" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_d4" (& "&") (identifier "local_d4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa426e;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa426e" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa426e")) (; ";")) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" (identifier "FUN_00047200") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_29;" (assignment_expression "pppppppuVar29 = extraout_ECX_29" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_29")) (; ";")) (goto_statement "goto LAB_000a3e57;" (goto "goto") (statement_identifier "LAB_000a3e57") (; ";")) (} "}"))) (expression_statement "*local_d0 = (int)local_f0;" (assignment_expression "*local_d0 = (int)local_f0" (pointer_expression "*local_d0" (* "*") (identifier "local_d0")) (= "=") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0"))) (; ";")) (expression_statement "local_d0 = local_d0 + 1;" (assignment_expression "local_d0 = local_d0 + 1" (identifier "local_d0") (= "=") (binary_expression "local_d0 + 1" (identifier "local_d0") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }" (else "else") (compound_statement "{\n                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];\n                          local_124 = param_1 + 0x48;\n                          uVar12 = local_158[(int)local_f0];\n                          local_178 = (uint *******)&local_84;\n                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;\n                          FUN_000926b0();\n                          local_6c = pppppppuVar27;\n                          local_60 = *local_134;\n                          local_58 = local_134[2];\n                          local_54 = local_134[3];\n                          local_50 = local_134[4];\n                          local_4c = local_134[5];\n                          local_48 = local_134[6];\n                          local_44 = local_134[7];\n                          local_40 = local_134[8];\n                          local_3c = local_134[9];\n                          local_38 = local_134[10];\n                          local_34 = local_134[0xb];\n                          local_30 = local_134[0xc];\n                          local_2c = local_134[0xd];\n                          local_28 = local_134[0xe];\n                          local_24 = local_134[0xf];\n                          *(uint ********)(puVar24 + -0xc) = local_178;\n                          *(uint ********)(puVar24 + -0x10) = local_124;\n                          local_5c = local_198;\n                    \n                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;\n                          local_68 = uVar12;\n                          local_64 = pppppppuVar22;\n                          FUN_000a10f0();\n                          pppppppuVar28 = local_120;\n                          pppppppuVar29 = extraout_ECX_04;\n                          pppppppuVar22 = pppppppuVar27;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }\n                        }" ({ "{") (expression_statement "pppppppuVar22 = (uint *******)local_15c[(int)local_f0];" (assignment_expression "pppppppuVar22 = (uint *******)local_15c[(int)local_f0]" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)local_15c[(int)local_f0]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_15c[(int)local_f0]" (identifier "local_15c") ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]")))) (; ";")) (expression_statement "local_124 = param_1 + 0x48;" (assignment_expression "local_124 = param_1 + 0x48" (identifier "local_124") (= "=") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48"))) (; ";")) (expression_statement "uVar12 = local_158[(int)local_f0];" (assignment_expression "uVar12 = local_158[(int)local_f0]" (identifier "uVar12") (= "=") (subscript_expression "local_158[(int)local_f0]" (identifier "local_158") ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]"))) (; ";")) (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" (identifier "local_178") (= "=") (cast_expression "(uint *******)&local_84" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&local_84" (& "&") (identifier "local_84")))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -4) = 0xa2a5f;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0xa2a5f" (pointer_expression "*(undefined4 *)(puVar24 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0xa2a5f")) (; ";")) (expression_statement "FUN_000926b0();" (call_expression "FUN_000926b0()" (identifier "FUN_000926b0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_6c = pppppppuVar27;" (assignment_expression "local_6c = pppppppuVar27" (identifier "local_6c") (= "=") (identifier "pppppppuVar27")) (; ";")) (expression_statement "local_60 = *local_134;" (assignment_expression "local_60 = *local_134" (identifier "local_60") (= "=") (pointer_expression "*local_134" (* "*") (identifier "local_134"))) (; ";")) (expression_statement "local_58 = local_134[2];" (assignment_expression "local_58 = local_134[2]" (identifier "local_58") (= "=") (subscript_expression "local_134[2]" (identifier "local_134") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "local_54 = local_134[3];" (assignment_expression "local_54 = local_134[3]" (identifier "local_54") (= "=") (subscript_expression "local_134[3]" (identifier "local_134") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "local_50 = local_134[4];" (assignment_expression "local_50 = local_134[4]" (identifier "local_50") (= "=") (subscript_expression "local_134[4]" (identifier "local_134") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "local_4c = local_134[5];" (assignment_expression "local_4c = local_134[5]" (identifier "local_4c") (= "=") (subscript_expression "local_134[5]" (identifier "local_134") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "local_48 = local_134[6];" (assignment_expression "local_48 = local_134[6]" (identifier "local_48") (= "=") (subscript_expression "local_134[6]" (identifier "local_134") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "local_44 = local_134[7];" (assignment_expression "local_44 = local_134[7]" (identifier "local_44") (= "=") (subscript_expression "local_134[7]" (identifier "local_134") ([ "[") (number_literal "7") (] "]"))) (; ";")) (expression_statement "local_40 = local_134[8];" (assignment_expression "local_40 = local_134[8]" (identifier "local_40") (= "=") (subscript_expression "local_134[8]" (identifier "local_134") ([ "[") (number_literal "8") (] "]"))) (; ";")) (expression_statement "local_3c = local_134[9];" (assignment_expression "local_3c = local_134[9]" (identifier "local_3c") (= "=") (subscript_expression "local_134[9]" (identifier "local_134") ([ "[") (number_literal "9") (] "]"))) (; ";")) (expression_statement "local_38 = local_134[10];" (assignment_expression "local_38 = local_134[10]" (identifier "local_38") (= "=") (subscript_expression "local_134[10]" (identifier "local_134") ([ "[") (number_literal "10") (] "]"))) (; ";")) (expression_statement "local_34 = local_134[0xb];" (assignment_expression "local_34 = local_134[0xb]" (identifier "local_34") (= "=") (subscript_expression "local_134[0xb]" (identifier "local_134") ([ "[") (number_literal "0xb") (] "]"))) (; ";")) (expression_statement "local_30 = local_134[0xc];" (assignment_expression "local_30 = local_134[0xc]" (identifier "local_30") (= "=") (subscript_expression "local_134[0xc]" (identifier "local_134") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "local_2c = local_134[0xd];" (assignment_expression "local_2c = local_134[0xd]" (identifier "local_2c") (= "=") (subscript_expression "local_134[0xd]" (identifier "local_134") ([ "[") (number_literal "0xd") (] "]"))) (; ";")) (expression_statement "local_28 = local_134[0xe];" (assignment_expression "local_28 = local_134[0xe]" (identifier "local_28") (= "=") (subscript_expression "local_134[0xe]" (identifier "local_134") ([ "[") (number_literal "0xe") (] "]"))) (; ";")) (expression_statement "local_24 = local_134[0xf];" (assignment_expression "local_24 = local_134[0xf]" (identifier "local_24") (= "=") (subscript_expression "local_134[0xf]" (identifier "local_134") ([ "[") (number_literal "0xf") (] "]"))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_178")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_124")) (; ";")) (expression_statement "local_5c = local_198;" (assignment_expression "local_5c = local_198" (identifier "local_5c") (= "=") (identifier "local_198")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2aea;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2aea" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2aea")) (; ";")) (expression_statement "local_68 = uVar12;" (assignment_expression "local_68 = uVar12" (identifier "local_68") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "local_64 = pppppppuVar22;" (assignment_expression "local_64 = pppppppuVar22" (identifier "local_64") (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "FUN_000a10f0();" (call_expression "FUN_000a10f0()" (identifier "FUN_000a10f0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar28 = local_120;" (assignment_expression "pppppppuVar28 = local_120" (identifier "pppppppuVar28") (= "=") (identifier "local_120")) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_04;" (assignment_expression "pppppppuVar29 = extraout_ECX_04" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_04")) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" (identifier "pppppppuVar22") (= "=") (identifier "pppppppuVar27")) (; ";")) (if_statement "if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }" (if "if") (parenthesized_expression "(local_84 != local_7c)" (( "(") (binary_expression "local_84 != local_7c" (identifier "local_84") (!= "!=") (identifier "local_7c")) () ")")) (compound_statement "{\n                            *(uint ********)(puVar24 + -0x10) = local_84;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;\n                            FUN_001807a0();\n                            pppppppuVar29 = extraout_ECX_05;\n                            pppppppuVar22 = pppppppuVar28;\n                          }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_84")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2b0a" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2b0a")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_05;" (assignment_expression "pppppppuVar29 = extraout_ECX_05" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_05")) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar28;" (assignment_expression "pppppppuVar22 = pppppppuVar28" (identifier "pppppppuVar22") (= "=") (identifier "pppppppuVar28")) (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }" (else "else") (compound_statement "{\n                        param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);\n                        ppppppuVar21 = param_1[0x21];\n                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                      }" ({ "{") (expression_statement "param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);" (assignment_expression "param_1[0xe][(int)local_f0] =\n                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1)" (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]")) (= "=") (cast_expression "(uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1)" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (parenthesized_expression "((*(byte *)((int)param_1 + 0x11d) != 0) + 1)" (( "(") (binary_expression "(*(byte *)((int)param_1 + 0x11d) != 0) + 1" (parenthesized_expression "(*(byte *)((int)param_1 + 0x11d) != 0)" (( "(") (binary_expression "*(byte *)((int)param_1 + 0x11d) != 0" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" (* "*") (cast_expression "(byte *)((int)param_1 + 0x11d)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_1 + 0x11d)" (( "(") (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "0x11d")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]"))) (; ";")) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")))) (goto_statement "goto LAB_000a23a1;" (goto "goto") (statement_identifier "LAB_000a23a1") (; ";")) (} "}"))) (expression_statement "local_124 = local_198;" (assignment_expression "local_124 = local_198" (identifier "local_124") (= "=") (identifier "local_198")) (; ";")) (} "}"))) (} "}"))) (expression_statement "puVar23 = puVar24;" (assignment_expression "puVar23 = puVar24" (identifier "puVar23") (= "=") (identifier "puVar24")) (; ";")) (if_statement "if (local_135 == '\0') {\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }\n                else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }" (if "if") (parenthesized_expression "(local_135 == '\0')" (( "(") (binary_expression "local_135 == '\0'" (identifier "local_135") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                  iVar19 = (int)local_f0 * 4;\n                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }\n                }" ({ "{") (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" (identifier "iVar19") (= "=") (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "4"))) (; ";")) (if_statement "if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }\n                  else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }" (if "if") (parenthesized_expression "((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0))" (( "(") (binary_expression "(*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)" (parenthesized_expression "(*(byte *)((int)param_1 + 0x11d) == 0)" (( "(") (binary_expression "*(byte *)((int)param_1 + 0x11d) == 0" (pointer_expression "*(byte *)((int)param_1 + 0x11d)" (* "*") (cast_expression "(byte *)((int)param_1 + 0x11d)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_1 + 0x11d)" (( "(") (binary_expression "(int)param_1 + 0x11d" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "0x11d")) () ")")))) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(((uint)local_ec[2] & 2) == 0)" (( "(") (binary_expression "((uint)local_ec[2] & 2) == 0" (parenthesized_expression "((uint)local_ec[2] & 2)" (( "(") (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "local_ec[2]" (identifier "local_ec") ([ "[") (number_literal "2") (] "]"))) (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n                    if (local_136 == '\0') goto LAB_000a2d10;\nLAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                    puVar24 = puVar23;\n                  }" ({ "{") (if_statement "if (local_136 == '\0') goto LAB_000a2d10;" (if "if") (parenthesized_expression "(local_136 == '\0')" (( "(") (binary_expression "local_136 == '\0'" (identifier "local_136") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000a2d10;" (goto "goto") (statement_identifier "LAB_000a2d10") (; ";"))) (labeled_statement "LAB_000a2b6b:\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;" (statement_identifier "LAB_000a2b6b") (: ":") (expression_statement "*(undefined4 *)((int)param_1[0xe] + iVar19) = 1;" (assignment_expression "*(undefined4 *)((int)param_1[0xe] + iVar19) = 1" (pointer_expression "*(undefined4 *)((int)param_1[0xe] + iVar19)" (* "*") (cast_expression "(undefined4 *)((int)param_1[0xe] + iVar19)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_1[0xe] + iVar19)" (( "(") (binary_expression "(int)param_1[0xe] + iVar19" (cast_expression "(int)param_1[0xe]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]"))) (+ "+") (identifier "iVar19")) () ")")))) (= "=") (number_literal "1")) (; ";"))) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]"))) (; ";")) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "puVar24 = puVar23;" (assignment_expression "puVar24 = puVar23" (identifier "puVar24") (= "=") (identifier "puVar23")) (; ";")) (} "}")) (else_clause "else {\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }" (else "else") (compound_statement "{\n                    local_170 = (uint *******)local_15c[(int)local_f0];\n                    uVar12 = local_158[(int)local_f0];\n                    local_154 = param_1 + 0x48;\n                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;\n                    FUN_000926b0();\n                    pppppppuVar22 = local_124;\n                    local_6c = pppppppuVar27;\n                    local_64 = local_170;\n                    local_60 = *local_134;\n                    local_58 = local_134[2];\n                    local_54 = local_134[3];\n                    local_50 = local_134[4];\n                    local_4c = local_134[5];\n                    local_48 = local_134[6];\n                    local_44 = local_134[7];\n                    local_40 = local_134[8];\n                    local_3c = local_134[9];\n                    local_38 = local_134[10];\n                    local_34 = local_134[0xb];\n                    local_30 = local_134[0xc];\n                    local_2c = local_134[0xd];\n                    local_28 = local_134[0xe];\n                    local_24 = local_134[0xf];\n                    *(uint *********)(puVar24 + -0xc) = &local_84;\n                    *(uint ********)(puVar24 + -0x10) = local_154;\n                    local_5c = local_124;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;\n                    local_68 = uVar12;\n                    FUN_000a10f0();\n                    pppppppuVar27 = local_120;\n                    pppppppuVar29 = extraout_ECX_22;\n                    if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }\n                    param_1[0xe][(int)local_f0] = (uint *****)0x2;\n                    ppppppuVar21 = param_1[0x21];\n                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;\n                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;\n                  }" ({ "{") (expression_statement "local_170 = (uint *******)local_15c[(int)local_f0];" (assignment_expression "local_170 = (uint *******)local_15c[(int)local_f0]" (identifier "local_170") (= "=") (cast_expression "(uint *******)local_15c[(int)local_f0]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_15c[(int)local_f0]" (identifier "local_15c") ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]")))) (; ";")) (expression_statement "uVar12 = local_158[(int)local_f0];" (assignment_expression "uVar12 = local_158[(int)local_f0]" (identifier "uVar12") (= "=") (subscript_expression "local_158[(int)local_f0]" (identifier "local_158") ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]"))) (; ";")) (expression_statement "local_154 = param_1 + 0x48;" (assignment_expression "local_154 = param_1 + 0x48" (identifier "local_154") (= "=") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -4) = 0xa3ea6;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0xa3ea6" (pointer_expression "*(undefined4 *)(puVar24 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0xa3ea6")) (; ";")) (expression_statement "FUN_000926b0();" (call_expression "FUN_000926b0()" (identifier "FUN_000926b0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar22 = local_124;" (assignment_expression "pppppppuVar22 = local_124" (identifier "pppppppuVar22") (= "=") (identifier "local_124")) (; ";")) (expression_statement "local_6c = pppppppuVar27;" (assignment_expression "local_6c = pppppppuVar27" (identifier "local_6c") (= "=") (identifier "pppppppuVar27")) (; ";")) (expression_statement "local_64 = local_170;" (assignment_expression "local_64 = local_170" (identifier "local_64") (= "=") (identifier "local_170")) (; ";")) (expression_statement "local_60 = *local_134;" (assignment_expression "local_60 = *local_134" (identifier "local_60") (= "=") (pointer_expression "*local_134" (* "*") (identifier "local_134"))) (; ";")) (expression_statement "local_58 = local_134[2];" (assignment_expression "local_58 = local_134[2]" (identifier "local_58") (= "=") (subscript_expression "local_134[2]" (identifier "local_134") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "local_54 = local_134[3];" (assignment_expression "local_54 = local_134[3]" (identifier "local_54") (= "=") (subscript_expression "local_134[3]" (identifier "local_134") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "local_50 = local_134[4];" (assignment_expression "local_50 = local_134[4]" (identifier "local_50") (= "=") (subscript_expression "local_134[4]" (identifier "local_134") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "local_4c = local_134[5];" (assignment_expression "local_4c = local_134[5]" (identifier "local_4c") (= "=") (subscript_expression "local_134[5]" (identifier "local_134") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "local_48 = local_134[6];" (assignment_expression "local_48 = local_134[6]" (identifier "local_48") (= "=") (subscript_expression "local_134[6]" (identifier "local_134") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "local_44 = local_134[7];" (assignment_expression "local_44 = local_134[7]" (identifier "local_44") (= "=") (subscript_expression "local_134[7]" (identifier "local_134") ([ "[") (number_literal "7") (] "]"))) (; ";")) (expression_statement "local_40 = local_134[8];" (assignment_expression "local_40 = local_134[8]" (identifier "local_40") (= "=") (subscript_expression "local_134[8]" (identifier "local_134") ([ "[") (number_literal "8") (] "]"))) (; ";")) (expression_statement "local_3c = local_134[9];" (assignment_expression "local_3c = local_134[9]" (identifier "local_3c") (= "=") (subscript_expression "local_134[9]" (identifier "local_134") ([ "[") (number_literal "9") (] "]"))) (; ";")) (expression_statement "local_38 = local_134[10];" (assignment_expression "local_38 = local_134[10]" (identifier "local_38") (= "=") (subscript_expression "local_134[10]" (identifier "local_134") ([ "[") (number_literal "10") (] "]"))) (; ";")) (expression_statement "local_34 = local_134[0xb];" (assignment_expression "local_34 = local_134[0xb]" (identifier "local_34") (= "=") (subscript_expression "local_134[0xb]" (identifier "local_134") ([ "[") (number_literal "0xb") (] "]"))) (; ";")) (expression_statement "local_30 = local_134[0xc];" (assignment_expression "local_30 = local_134[0xc]" (identifier "local_30") (= "=") (subscript_expression "local_134[0xc]" (identifier "local_134") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "local_2c = local_134[0xd];" (assignment_expression "local_2c = local_134[0xd]" (identifier "local_2c") (= "=") (subscript_expression "local_134[0xd]" (identifier "local_134") ([ "[") (number_literal "0xd") (] "]"))) (; ";")) (expression_statement "local_28 = local_134[0xe];" (assignment_expression "local_28 = local_134[0xe]" (identifier "local_28") (= "=") (subscript_expression "local_134[0xe]" (identifier "local_134") ([ "[") (number_literal "0xe") (] "]"))) (; ";")) (expression_statement "local_24 = local_134[0xf];" (assignment_expression "local_24 = local_134[0xf]" (identifier "local_24") (= "=") (subscript_expression "local_134[0xf]" (identifier "local_134") ([ "[") (number_literal "0xf") (] "]"))) (; ";")) (expression_statement "*(uint *********)(puVar24 + -0xc) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0xc) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint *********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "&local_84" (& "&") (identifier "local_84"))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_154;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_154" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_154")) (; ";")) (expression_statement "local_5c = local_124;" (assignment_expression "local_5c = local_124" (identifier "local_5c") (= "=") (identifier "local_124")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3f32;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3f32" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3f32")) (; ";")) (expression_statement "local_68 = uVar12;" (assignment_expression "local_68 = uVar12" (identifier "local_68") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "FUN_000a10f0();" (call_expression "FUN_000a10f0()" (identifier "FUN_000a10f0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" (identifier "pppppppuVar27") (= "=") (identifier "local_120")) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_22;" (assignment_expression "pppppppuVar29 = extraout_ECX_22" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_22")) (; ";")) (if_statement "if (local_84 != local_7c) {\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }" (if "if") (parenthesized_expression "(local_84 != local_7c)" (( "(") (binary_expression "local_84 != local_7c" (identifier "local_84") (!= "!=") (identifier "local_7c")) () ")")) (compound_statement "{\n                      *(uint ********)(puVar24 + -0x10) = local_84;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;\n                      FUN_001807a0();\n                      pppppppuVar29 = extraout_ECX_23;\n                      pppppppuVar22 = pppppppuVar27;\n                    }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -0x10) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_84")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3f4e" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3f4e")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_23;" (assignment_expression "pppppppuVar29 = extraout_ECX_23" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_23")) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" (identifier "pppppppuVar22") (= "=") (identifier "pppppppuVar27")) (; ";")) (} "}"))) (expression_statement "param_1[0xe][(int)local_f0] = (uint *****)0x2;" (assignment_expression "param_1[0xe][(int)local_f0] = (uint *****)0x2" (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]")) (= "=") (cast_expression "(uint *****)0x2" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x2"))) (; ";")) (expression_statement "ppppppuVar21 = param_1[0x21];" (assignment_expression "ppppppuVar21 = param_1[0x21]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]"))) (; ";")) (expression_statement "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[(int)local_f0 * 2 + 1]" (identifier "ppppppuVar21") ([ "[") (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }" (else "else") (compound_statement "{\n                  pppppuVar15 = (*local_13c)[2];\n                  if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }\n                  iVar19 = (int)local_f0 * 4;\n                  pppppuVar18 = param_1[0xe][(int)local_f0];\n                  pppppppuVar29 = param_1;\n                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }\n                  puVar24 = puVar23;\n                  if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }\n                }" ({ "{") (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" (identifier "pppppuVar15") (= "=") (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]"))) (; ";")) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }" (if "if") (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar15 == (uint *****)0x0" (identifier "pppppuVar15") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    *(uint ********)(puVar24 + -4) = pppppppuVar22;\n                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;\n                    FUN_0005f0b0();\n                  }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -4) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar24 + -4) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar24 + -4)" (* "*") (cast_expression "(uint ********)(puVar24 + -4)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -8)" (* "*") (cast_expression "(uint ********)(puVar24 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x5c")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa4330;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa4330" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa4330")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" (identifier "iVar19") (= "=") (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "pppppuVar18 = param_1[0xe][(int)local_f0];" (assignment_expression "pppppuVar18 = param_1[0xe][(int)local_f0]" (identifier "pppppuVar18") (= "=") (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]"))) (; ";")) (expression_statement "pppppppuVar29 = param_1;" (assignment_expression "pppppppuVar29 = param_1" (identifier "pppppppuVar29") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }\n                  else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }" (if "if") (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x18b1) == '\0')" (( "(") (binary_expression "*(char *)((int)pppppuVar15 + 0x18b1) == '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x18b1)" (* "*") (cast_expression "(char *)((int)pppppuVar15 + 0x18b1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppuVar15 + 0x18b1)" (( "(") (binary_expression "(int)pppppuVar15 + 0x18b1" (cast_expression "(int)pppppuVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppuVar15")) (+ "+") (number_literal "0x18b1")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }\n                  }" ({ "{") (labeled_statement "LAB_000a2f0d:\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }" (statement_identifier "LAB_000a2f0d") (: ":") (if_statement "if (pppppuVar15[0x164d] != (uint ****)0x0) {\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }" (if "if") (parenthesized_expression "(pppppuVar15[0x164d] != (uint ****)0x0)" (( "(") (binary_expression "pppppuVar15[0x164d] != (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" (identifier "pppppuVar15") ([ "[") (number_literal "0x164d") (] "]")) (!= "!=") (cast_expression "(uint ****)0x0" (( "(") (type_descriptor "uint ****" (type_identifier "uint") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }\nLAB_000a2cf0:\n                      pppppppuVar27 = local_120;\n                      pppppppuVar29 = local_ec;\n                      if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }\n                    }" ({ "{") (if_statement "if (pppppuVar18 == (uint *****)0x0) {\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }" (if "if") (parenthesized_expression "(pppppuVar18 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar18 == (uint *****)0x0" (identifier "pppppuVar18") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];\n                        pppppppuVar29 = local_ec;\n                        puVar24 = puVar23;\n                        if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }\n                        goto LAB_000a23a1;\n                      }" ({ "{") (expression_statement "uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2];" (assignment_expression "uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2]" (identifier "uVar10") (= "=") (binary_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                                 (uint)param_1[0x21][(int)local_f0 * 2]" (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[0x21][(int)local_f0 * 2 + 1]" (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]")) ([ "[") (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]"))) (& "&") (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[0x21][(int)local_f0 * 2]" (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]")) ([ "[") (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (] "]"))))) (; ";")) (expression_statement "pppppppuVar29 = local_ec;" (assignment_expression "pppppppuVar29 = local_ec" (identifier "pppppppuVar29") (= "=") (identifier "local_ec")) (; ";")) (expression_statement "puVar24 = puVar23;" (assignment_expression "puVar24 = puVar23" (identifier "puVar24") (= "=") (identifier "puVar23")) (; ";")) (if_statement "if (uVar10 != 0xffffffff) {\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }" (if "if") (parenthesized_expression "(uVar10 != 0xffffffff)" (( "(") (binary_expression "uVar10 != 0xffffffff" (identifier "uVar10") (!= "!=") (number_literal "0xffffffff")) () ")")) (compound_statement "{\n                          *(uint *)(puVar23 + -4) = uVar10;\n                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;\n                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;\n                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;\n                    \n                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;\n                          FUN_0005f0b0();\n                        }" ({ "{") (expression_statement "*(uint *)(puVar23 + -4) = uVar10;" (assignment_expression "*(uint *)(puVar23 + -4) = uVar10" (pointer_expression "*(uint *)(puVar23 + -4)" (* "*") (cast_expression "(uint *)(puVar23 + -4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -4)" (( "(") (binary_expression "puVar23 + -4" (identifier "puVar23") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -8) = local_120 + -0x373b3;" (assignment_expression "*(uint ********)(puVar23 + -8) = local_120 + -0x373b3" (pointer_expression "*(uint ********)(puVar23 + -8)" (* "*") (cast_expression "(uint ********)(puVar23 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -8)" (( "(") (binary_expression "puVar23 + -8" (identifier "puVar23") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x373b3" (identifier "local_120") (+ "+") (number_literal "-0x373b3"))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = 0x6f9;" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = 0x6f9" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0xc)" (( "(") (binary_expression "puVar23 + -0xc" (identifier "puVar23") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x6f9")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2" (pointer_expression "*(uint ********)(puVar23 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x10)" (( "(") (binary_expression "puVar23 + -0x10" (identifier "puVar23") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x375d2" (identifier "local_120") (+ "+") (number_literal "-0x375d2"))) (; ";")) (expression_statement "*(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;" (assignment_expression "*(undefined **)(puVar23 + -0x14) = &UNK_000a2f61" (pointer_expression "*(undefined **)(puVar23 + -0x14)" (* "*") (cast_expression "(undefined **)(puVar23 + -0x14)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar23 + -0x14)" (( "(") (binary_expression "puVar23 + -0x14" (identifier "puVar23") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "&UNK_000a2f61" (& "&") (identifier "UNK_000a2f61"))) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_000a23a1;" (goto "goto") (statement_identifier "LAB_000a23a1") (; ";")) (} "}"))) (labeled_statement "LAB_000a2cf0:\n                      pppppppuVar27 = local_120;" (statement_identifier "LAB_000a2cf0") (: ":") (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" (identifier "pppppppuVar27") (= "=") (identifier "local_120")) (; ";"))) (expression_statement "pppppppuVar29 = local_ec;" (assignment_expression "pppppppuVar29 = local_ec" (identifier "pppppppuVar29") (= "=") (identifier "local_ec")) (; ";")) (if_statement "if (((uint)local_ec[2] & 2) != 0) {\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }" (if "if") (parenthesized_expression "(((uint)local_ec[2] & 2) != 0)" (( "(") (binary_expression "((uint)local_ec[2] & 2) != 0" (parenthesized_expression "((uint)local_ec[2] & 2)" (( "(") (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "local_ec[2]" (identifier "local_ec") ([ "[") (number_literal "2") (] "]"))) (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                        *(uint ********)(puVar23 + -8) = local_f0;\n                        *(uint ********)(puVar23 + -0xc) = param_1;\n                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);\n                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;\n                        cVar7 = FUN_00062560();\n                        pppppppuVar22 = pppppppuVar27;\n                        if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }\n                        iVar19 = (int)local_f0 * 4;\n                        pppppuVar18 = param_1[0xe][(int)local_f0];\n                        pppppppuVar29 = extraout_ECX_20;\n                      }" ({ "{") (expression_statement "*(uint ********)(puVar23 + -8) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -8) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -8)" (* "*") (cast_expression "(uint ********)(puVar23 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -8)" (( "(") (binary_expression "puVar23 + -8" (identifier "puVar23") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0xc) = param_1;" (assignment_expression "*(uint ********)(puVar23 + -0xc) = param_1" (pointer_expression "*(uint ********)(puVar23 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar23 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0xc)" (( "(") (binary_expression "puVar23 + -0xc" (identifier "puVar23") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);" (assignment_expression "*(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c)" (pointer_expression "*(undefined4 *)(puVar23 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x10)" (( "(") (binary_expression "puVar23 + -0x10" (identifier "puVar23") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(param_2 + 0x15c)" (* "*") (cast_expression "(undefined4 *)(param_2 + 0x15c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x15c)" (( "(") (binary_expression "param_2 + 0x15c" (identifier "param_2") (+ "+") (number_literal "0x15c")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;" (assignment_expression "*(undefined4 *)(puVar23 + -0x14) = 0xa3ddb" (pointer_expression "*(undefined4 *)(puVar23 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x14)" (( "(") (binary_expression "puVar23 + -0x14" (identifier "puVar23") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3ddb")) (; ";")) (expression_statement "cVar7 = FUN_00062560();" (assignment_expression "cVar7 = FUN_00062560()" (identifier "cVar7") (= "=") (call_expression "FUN_00062560()" (identifier "FUN_00062560") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" (identifier "pppppppuVar22") (= "=") (identifier "pppppppuVar27")) (; ";")) (if_statement "if (cVar7 != '\0') {\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }" (if "if") (parenthesized_expression "(cVar7 != '\0')" (( "(") (binary_expression "cVar7 != '\0'" (identifier "cVar7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                          if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }\n                          pppppppuVar29 = extraout_ECX_20;\n                          puVar26 = puVar23;\n                          pppppppuVar27 = local_f0;\n                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }\n                          goto LAB_000a2c3a;\n                        }" ({ "{") (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }" (if "if") (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" (( "(") (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]")) (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                            *(int *)(puVar23 + -4) = iVar19;\n                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;\n                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;\n                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;\n                            FUN_0005f0b0();\n                          }" ({ "{") (expression_statement "*(int *)(puVar23 + -4) = iVar19;" (assignment_expression "*(int *)(puVar23 + -4) = iVar19" (pointer_expression "*(int *)(puVar23 + -4)" (* "*") (cast_expression "(int *)(puVar23 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -4)" (( "(") (binary_expression "puVar23 + -4" (identifier "puVar23") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar23 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar23 + -8)" (* "*") (cast_expression "(uint ********)(puVar23 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -8)" (( "(") (binary_expression "puVar23 + -8" (identifier "puVar23") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0xc)" (( "(") (binary_expression "puVar23 + -0xc" (identifier "puVar23") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x5c")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar23 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x10)" (( "(") (binary_expression "puVar23 + -0x10" (identifier "puVar23") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x14) = 0xa44a9;" (assignment_expression "*(undefined4 *)(puVar23 + -0x14) = 0xa44a9" (pointer_expression "*(undefined4 *)(puVar23 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x14)" (( "(") (binary_expression "puVar23 + -0x14" (identifier "puVar23") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa44a9")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "pppppppuVar29 = extraout_ECX_20;" (assignment_expression "pppppppuVar29 = extraout_ECX_20" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_20")) (; ";")) (expression_statement "puVar26 = puVar23;" (assignment_expression "puVar26 = puVar23" (identifier "puVar26") (= "=") (identifier "puVar23")) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (if_statement "if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }" (if "if") (parenthesized_expression "(*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0')" (( "(") (binary_expression "*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x2ed1)" (* "*") (cast_expression "(char *)((int)(*local_13c)[2] + 0x2ed1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)(*local_13c)[2] + 0x2ed1)" (( "(") (binary_expression "(int)(*local_13c)[2] + 0x2ed1" (cast_expression "(int)(*local_13c)[2]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]"))) (+ "+") (number_literal "0x2ed1")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                            *(uint ********)(puVar23 + -4) = local_f0;\n                            *(uint ********)(puVar23 + -8) = param_1;\n                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);\n                            *(int ***)(puVar23 + -0x10) = &local_11c;\n                    \n                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;\n                            FUN_000625c0();\n                            iVar19 = *local_11c;\n                            iVar5 = local_11c[1];\n                            *(undefined4 *)(puVar23 + -0xc) = local_118;\n                            *(int **)(puVar23 + -0x10) = local_11c;\n                            *(uint *********)(puVar23 + -0x14) = &local_84;\n                            pcVar6 = *(code **)(iVar19 + 0x40);\n                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;\n                            (*pcVar6)();\n                            pppppppuVar29 = local_84;\n                            local_12c = (uint *******)param_1[1];\n                            pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                            if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }\n                            local_154 = local_9c;\n                            local_124 = (uint *******)*local_1a0;\n                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;\n                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;\n                            uVar12 = gettext();\n                            pppppppuVar22 = local_120;\n                            *(int *)(puVar23 + -0x18) = iVar5;\n                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;\n                            *(uint ********)(puVar23 + -0x20) = local_12c;\n                            *(uint ********)(puVar23 + -0x24) = local_154;\n                            *(uint ********)(puVar23 + -0x28) = local_124;\n                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;\n                    \n                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;\n                            FUN_0005ad60();\n                            pppppppuVar29 = extraout_ECX_24;\n                            if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }\n                            pppppppuVar28 = local_120;\n                            puVar26 = puVar23 + -0xc;\n                            pppppppuVar27 = local_f0;\n                            if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }\n                          }" ({ "{") (expression_statement "*(uint ********)(puVar23 + -4) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -4) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -4)" (* "*") (cast_expression "(uint ********)(puVar23 + -4)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -4)" (( "(") (binary_expression "puVar23 + -4" (identifier "puVar23") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -8) = param_1;" (assignment_expression "*(uint ********)(puVar23 + -8) = param_1" (pointer_expression "*(uint ********)(puVar23 + -8)" (* "*") (cast_expression "(uint ********)(puVar23 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -8)" (( "(") (binary_expression "puVar23 + -8" (identifier "puVar23") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c)" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0xc)" (( "(") (binary_expression "puVar23 + -0xc" (identifier "puVar23") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(param_2 + 0x15c)" (* "*") (cast_expression "(undefined4 *)(param_2 + 0x15c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x15c)" (( "(") (binary_expression "param_2 + 0x15c" (identifier "param_2") (+ "+") (number_literal "0x15c")) () ")"))))) (; ";")) (expression_statement "*(int ***)(puVar23 + -0x10) = &local_11c;" (assignment_expression "*(int ***)(puVar23 + -0x10) = &local_11c" (pointer_expression "*(int ***)(puVar23 + -0x10)" (* "*") (cast_expression "(int ***)(puVar23 + -0x10)" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar23 + -0x10)" (( "(") (binary_expression "puVar23 + -0x10" (identifier "puVar23") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_11c" (& "&") (identifier "local_11c"))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x14) = 0xa4081;" (assignment_expression "*(undefined4 *)(puVar23 + -0x14) = 0xa4081" (pointer_expression "*(undefined4 *)(puVar23 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x14)" (( "(") (binary_expression "puVar23 + -0x14" (identifier "puVar23") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa4081")) (; ";")) (expression_statement "FUN_000625c0();" (call_expression "FUN_000625c0()" (identifier "FUN_000625c0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar19 = *local_11c;" (assignment_expression "iVar19 = *local_11c" (identifier "iVar19") (= "=") (pointer_expression "*local_11c" (* "*") (identifier "local_11c"))) (; ";")) (expression_statement "iVar5 = local_11c[1];" (assignment_expression "iVar5 = local_11c[1]" (identifier "iVar5") (= "=") (subscript_expression "local_11c[1]" (identifier "local_11c") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0xc) = local_118;" (assignment_expression "*(undefined4 *)(puVar23 + -0xc) = local_118" (pointer_expression "*(undefined4 *)(puVar23 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0xc)" (( "(") (binary_expression "puVar23 + -0xc" (identifier "puVar23") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_118")) (; ";")) (expression_statement "*(int **)(puVar23 + -0x10) = local_11c;" (assignment_expression "*(int **)(puVar23 + -0x10) = local_11c" (pointer_expression "*(int **)(puVar23 + -0x10)" (* "*") (cast_expression "(int **)(puVar23 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar23 + -0x10)" (( "(") (binary_expression "puVar23 + -0x10" (identifier "puVar23") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_11c")) (; ";")) (expression_statement "*(uint *********)(puVar23 + -0x14) = &local_84;" (assignment_expression "*(uint *********)(puVar23 + -0x14) = &local_84" (pointer_expression "*(uint *********)(puVar23 + -0x14)" (* "*") (cast_expression "(uint *********)(puVar23 + -0x14)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar23 + -0x14)" (( "(") (binary_expression "puVar23 + -0x14" (identifier "puVar23") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "&local_84" (& "&") (identifier "local_84"))) (; ";")) (expression_statement "pcVar6 = *(code **)(iVar19 + 0x40);" (assignment_expression "pcVar6 = *(code **)(iVar19 + 0x40)" (identifier "pcVar6") (= "=") (pointer_expression "*(code **)(iVar19 + 0x40)" (* "*") (cast_expression "(code **)(iVar19 + 0x40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar19 + 0x40)" (( "(") (binary_expression "iVar19 + 0x40" (identifier "iVar19") (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x18) = 0xa409e;" (assignment_expression "*(undefined4 *)(puVar23 + -0x18) = 0xa409e" (pointer_expression "*(undefined4 *)(puVar23 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x18)" (( "(") (binary_expression "puVar23 + -0x18" (identifier "puVar23") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0xa409e")) (; ";")) (expression_statement "(*pcVar6)();" (call_expression "(*pcVar6)()" (parenthesized_expression "(*pcVar6)" (( "(") (pointer_expression "*pcVar6" (* "*") (identifier "pcVar6")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = local_84;" (assignment_expression "pppppppuVar29 = local_84" (identifier "pppppppuVar29") (= "=") (identifier "local_84")) (; ";")) (expression_statement "local_12c = (uint *******)param_1[1];" (assignment_expression "local_12c = (uint *******)param_1[1]" (identifier "local_12c") (= "=") (cast_expression "(uint *******)param_1[1]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)(*param_1)[0x10];" (assignment_expression "pppppppuVar22 = (uint *******)(*param_1)[0x10]" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)(*param_1)[0x10]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "(*param_1)[0x10]" (parenthesized_expression "(*param_1)" (( "(") (pointer_expression "*param_1" (* "*") (identifier "param_1")) () ")")) ([ "[") (number_literal "0x10") (] "]")))) (; ";")) (if_statement "if (pppppppuVar22 == local_120 + -0x99678) {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }\n                            else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }" (if "if") (parenthesized_expression "(pppppppuVar22 == local_120 + -0x99678)" (( "(") (binary_expression "pppppppuVar22 == local_120 + -0x99678" (identifier "pppppppuVar22") (== "==") (binary_expression "local_120 + -0x99678" (identifier "local_120") (+ "+") (number_literal "-0x99678"))) () ")")) (compound_statement "{\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;\n                              FUN_0004e830();\n                            }" ({ "{") (expression_statement "*(uint ********)(puVar23 + -0x10) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x10)" (( "(") (binary_expression "puVar23 + -0x10" (identifier "puVar23") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0x14) = param_1 + 0x24;" (assignment_expression "*(uint ********)(puVar23 + -0x14) = param_1 + 0x24" (pointer_expression "*(uint ********)(puVar23 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x14)" (( "(") (binary_expression "puVar23 + -0x14" (identifier "puVar23") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (binary_expression "param_1 + 0x24" (identifier "param_1") (+ "+") (number_literal "0x24"))) (; ";")) (expression_statement "*(uint *********)(puVar23 + -0x18) = &local_9c;" (assignment_expression "*(uint *********)(puVar23 + -0x18) = &local_9c" (pointer_expression "*(uint *********)(puVar23 + -0x18)" (* "*") (cast_expression "(uint *********)(puVar23 + -0x18)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar23 + -0x18)" (( "(") (binary_expression "puVar23 + -0x18" (identifier "puVar23") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "&local_9c" (& "&") (identifier "local_9c"))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;" (assignment_expression "*(undefined4 *)(puVar23 + -0x1c) = 0xa40ec" (pointer_expression "*(undefined4 *)(puVar23 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x1c)" (( "(") (binary_expression "puVar23 + -0x1c" (identifier "puVar23") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0xa40ec")) (; ";")) (expression_statement "FUN_0004e830();" (call_expression "FUN_0004e830()" (identifier "FUN_0004e830") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }" (else "else") (compound_statement "{\n                              *(uint ********)(puVar23 + -0x10) = local_f0;\n                              *(uint ********)(puVar23 + -0x14) = param_1;\n                              *(uint *********)(puVar23 + -0x18) = &local_9c;\n                    \n                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;\n                              (*(code *)pppppppuVar22)();\n                            }" ({ "{") (expression_statement "*(uint ********)(puVar23 + -0x10) = local_f0;" (assignment_expression "*(uint ********)(puVar23 + -0x10) = local_f0" (pointer_expression "*(uint ********)(puVar23 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x10)" (( "(") (binary_expression "puVar23 + -0x10" (identifier "puVar23") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0x14) = param_1;" (assignment_expression "*(uint ********)(puVar23 + -0x14) = param_1" (pointer_expression "*(uint ********)(puVar23 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x14)" (( "(") (binary_expression "puVar23 + -0x14" (identifier "puVar23") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(uint *********)(puVar23 + -0x18) = &local_9c;" (assignment_expression "*(uint *********)(puVar23 + -0x18) = &local_9c" (pointer_expression "*(uint *********)(puVar23 + -0x18)" (* "*") (cast_expression "(uint *********)(puVar23 + -0x18)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar23 + -0x18)" (( "(") (binary_expression "puVar23 + -0x18" (identifier "puVar23") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "&local_9c" (& "&") (identifier "local_9c"))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;" (assignment_expression "*(undefined4 *)(puVar23 + -0x1c) = 0xa42b7" (pointer_expression "*(undefined4 *)(puVar23 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x1c)" (( "(") (binary_expression "puVar23 + -0x1c" (identifier "puVar23") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0xa42b7")) (; ";")) (expression_statement "(*(code *)pppppppuVar22)();" (call_expression "(*(code *)pppppppuVar22)()" (parenthesized_expression "(*(code *)pppppppuVar22)" (( "(") (pointer_expression "*(code *)pppppppuVar22" (* "*") (cast_expression "(code *)pppppppuVar22" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (expression_statement "local_154 = local_9c;" (assignment_expression "local_154 = local_9c" (identifier "local_154") (= "=") (identifier "local_9c")) (; ";")) (expression_statement "local_124 = (uint *******)*local_1a0;" (assignment_expression "local_124 = (uint *******)*local_1a0" (identifier "local_124") (= "=") (cast_expression "(uint *******)*local_1a0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*local_1a0" (* "*") (identifier "local_1a0")))) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x1c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x1c)" (( "(") (binary_expression "puVar23 + -0x1c" (identifier "puVar23") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (binary_expression "local_120 + -0x3746d" (identifier "local_120") (+ "+") (number_literal "-0x3746d"))) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x20) = 0xa4120;" (assignment_expression "*(undefined4 *)(puVar23 + -0x20) = 0xa4120" (pointer_expression "*(undefined4 *)(puVar23 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x20)" (( "(") (binary_expression "puVar23 + -0x20" (identifier "puVar23") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0xa4120")) (; ";")) (expression_statement "uVar12 = gettext();" (assignment_expression "uVar12 = gettext()" (identifier "uVar12") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";")) (expression_statement "*(int *)(puVar23 + -0x18) = iVar5;" (assignment_expression "*(int *)(puVar23 + -0x18) = iVar5" (pointer_expression "*(int *)(puVar23 + -0x18)" (* "*") (cast_expression "(int *)(puVar23 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x18)" (( "(") (binary_expression "puVar23 + -0x18" (identifier "puVar23") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "iVar5")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0x1c) = pppppppuVar29;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = pppppppuVar29" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x1c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x1c)" (( "(") (binary_expression "puVar23 + -0x1c" (identifier "puVar23") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "pppppppuVar29")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0x20) = local_12c;" (assignment_expression "*(uint ********)(puVar23 + -0x20) = local_12c" (pointer_expression "*(uint ********)(puVar23 + -0x20)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x20)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x20)" (( "(") (binary_expression "puVar23 + -0x20" (identifier "puVar23") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0x24) = local_154;" (assignment_expression "*(uint ********)(puVar23 + -0x24) = local_154" (pointer_expression "*(uint ********)(puVar23 + -0x24)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x24)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x24)" (( "(") (binary_expression "puVar23 + -0x24" (identifier "puVar23") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "local_154")) (; ";")) (expression_statement "*(uint ********)(puVar23 + -0x28) = local_124;" (assignment_expression "*(uint ********)(puVar23 + -0x28) = local_124" (pointer_expression "*(uint ********)(puVar23 + -0x28)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x28)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x28)" (( "(") (binary_expression "puVar23 + -0x28" (identifier "puVar23") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (identifier "local_124")) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x2c) = uVar12;" (assignment_expression "*(undefined4 *)(puVar23 + -0x2c) = uVar12" (pointer_expression "*(undefined4 *)(puVar23 + -0x2c)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x2c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x2c)" (( "(") (binary_expression "puVar23 + -0x2c" (identifier "puVar23") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x30) = 0xa4146;" (assignment_expression "*(undefined4 *)(puVar23 + -0x30) = 0xa4146" (pointer_expression "*(undefined4 *)(puVar23 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x30)" (( "(") (binary_expression "puVar23 + -0x30" (identifier "puVar23") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "0xa4146")) (; ";")) (expression_statement "FUN_0005ad60();" (call_expression "FUN_0005ad60()" (identifier "FUN_0005ad60") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_24;" (assignment_expression "pppppppuVar29 = extraout_ECX_24" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_24")) (; ";")) (if_statement "if (local_9c != local_94) {\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }" (if "if") (parenthesized_expression "(local_9c != local_94)" (( "(") (binary_expression "local_9c != local_94" (identifier "local_9c") (!= "!=") (identifier "local_94")) () ")")) (compound_statement "{\n                              *(uint ********)(puVar23 + -0x1c) = local_9c;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;\n                              FUN_001807a0();\n                              pppppppuVar29 = extraout_ECX_25;\n                            }" ({ "{") (expression_statement "*(uint ********)(puVar23 + -0x1c) = local_9c;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = local_9c" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x1c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x1c)" (( "(") (binary_expression "puVar23 + -0x1c" (identifier "puVar23") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_9c")) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x20) = 0xa4162;" (assignment_expression "*(undefined4 *)(puVar23 + -0x20) = 0xa4162" (pointer_expression "*(undefined4 *)(puVar23 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x20)" (( "(") (binary_expression "puVar23 + -0x20" (identifier "puVar23") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0xa4162")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_25;" (assignment_expression "pppppppuVar29 = extraout_ECX_25" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_25")) (; ";")) (} "}"))) (expression_statement "pppppppuVar28 = local_120;" (assignment_expression "pppppppuVar28 = local_120" (identifier "pppppppuVar28") (= "=") (identifier "local_120")) (; ";")) (expression_statement "puVar26 = puVar23 + -0xc;" (assignment_expression "puVar26 = puVar23 + -0xc" (identifier "puVar26") (= "=") (binary_expression "puVar23 + -0xc" (identifier "puVar23") (+ "+") (number_literal "-0xc"))) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (if_statement "if (local_84 != local_7c) {\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }" (if "if") (parenthesized_expression "(local_84 != local_7c)" (( "(") (binary_expression "local_84 != local_7c" (identifier "local_84") (!= "!=") (identifier "local_7c")) () ")")) (compound_statement "{\n                              *(uint ********)(puVar23 + -0x1c) = local_84;\n                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;\n                              FUN_001807a0();\n                              puVar26 = puVar23 + -0xc;\n                              pppppppuVar29 = extraout_ECX_26;\n                              pppppppuVar22 = pppppppuVar28;\n                              pppppppuVar27 = local_f0;\n                            }" ({ "{") (expression_statement "*(uint ********)(puVar23 + -0x1c) = local_84;" (assignment_expression "*(uint ********)(puVar23 + -0x1c) = local_84" (pointer_expression "*(uint ********)(puVar23 + -0x1c)" (* "*") (cast_expression "(uint ********)(puVar23 + -0x1c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar23 + -0x1c)" (( "(") (binary_expression "puVar23 + -0x1c" (identifier "puVar23") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_84")) (; ";")) (expression_statement "*(undefined4 *)(puVar23 + -0x20) = 0xa417e;" (assignment_expression "*(undefined4 *)(puVar23 + -0x20) = 0xa417e" (pointer_expression "*(undefined4 *)(puVar23 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar23 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + -0x20)" (( "(") (binary_expression "puVar23 + -0x20" (identifier "puVar23") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0xa417e")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar26 = puVar23 + -0xc;" (assignment_expression "puVar26 = puVar23 + -0xc" (identifier "puVar26") (= "=") (binary_expression "puVar23 + -0xc" (identifier "puVar23") (+ "+") (number_literal "-0xc"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_26;" (assignment_expression "pppppppuVar29 = extraout_ECX_26" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_26")) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar28;" (assignment_expression "pppppppuVar22 = pppppppuVar28" (identifier "pppppppuVar22") (= "=") (identifier "pppppppuVar28")) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_000a2c3a;" (goto "goto") (statement_identifier "LAB_000a2c3a") (; ";")) (} "}"))) (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" (identifier "iVar19") (= "=") (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "pppppuVar18 = param_1[0xe][(int)local_f0];" (assignment_expression "pppppuVar18 = param_1[0xe][(int)local_f0]" (identifier "pppppuVar18") (= "=") (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_20;" (assignment_expression "pppppppuVar29 = extraout_ECX_20" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_20")) (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }" (else "else") (compound_statement "{\n                    if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }\n                    if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }\n                    pppppppuVar29 = local_ec;\n                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;\n                  }" ({ "{") (if_statement "if (pppppuVar18 == (uint *****)0x0) {\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }" (if "if") (parenthesized_expression "(pppppuVar18 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar18 == (uint *****)0x0" (identifier "pppppuVar18") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }\n                      goto LAB_000a23a1;\n                    }" ({ "{") (if_statement "if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }" (if "if") (parenthesized_expression "(((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff)" (( "(") (binary_expression "((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff" (parenthesized_expression "((uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2])" (( "(") (binary_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1] &\n                          (uint)param_1[0x21][(int)local_f0 * 2]" (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2 + 1]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[0x21][(int)local_f0 * 2 + 1]" (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]")) ([ "[") (binary_expression "(int)local_f0 * 2 + 1" (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]"))) (& "&") (cast_expression "(uint)param_1[0x21][(int)local_f0 * 2]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[0x21][(int)local_f0 * 2]" (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]")) ([ "[") (binary_expression "(int)local_f0 * 2" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "2")) (] "]")))) () ")")) (!= "!=") (number_literal "0xffffffff")) () ")")) (compound_statement "{\n                        *(uint ********)(puVar24 + -4) = param_1;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;\n                    \n                    \n                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;\n                        FUN_0005f0b0();\n                      }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -4) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -4) = param_1" (pointer_expression "*(uint ********)(puVar24 + -4)" (* "*") (cast_expression "(uint ********)(puVar24 + -4)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x373b3;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x373b3" (pointer_expression "*(uint ********)(puVar24 + -8)" (* "*") (cast_expression "(uint ********)(puVar24 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x373b3" (identifier "local_120") (+ "+") (number_literal "-0x373b3"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x6e4;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x6e4" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x6e4")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x375d2" (identifier "local_120") (+ "+") (number_literal "-0x375d2"))) (; ";")) (expression_statement "*(undefined **)(puVar24 + -0x14) = &UNK_000a342d;" (assignment_expression "*(undefined **)(puVar24 + -0x14) = &UNK_000a342d" (pointer_expression "*(undefined **)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined **)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "&UNK_000a342d" (& "&") (identifier "UNK_000a342d"))) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_000a23a1;" (goto "goto") (statement_identifier "LAB_000a23a1") (; ";")) (} "}"))) (if_statement "if (((uint)local_ec[2] & 2) != 0) {\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }" (if "if") (parenthesized_expression "(((uint)local_ec[2] & 2) != 0)" (( "(") (binary_expression "((uint)local_ec[2] & 2) != 0" (parenthesized_expression "((uint)local_ec[2] & 2)" (( "(") (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "local_ec[2]" (identifier "local_ec") ([ "[") (number_literal "2") (] "]"))) (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                      local_80 = local_f0;\n                      local_170 = *(uint ********)(param_2 + 0x158);\n                      local_84 = param_1;\n                      local_178 = (uint *******)&local_84;\n                      *(uint ********)(puVar24 + -8) = local_178;\n                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;\n                      *(int **)(puVar24 + -0x10) = &local_110;\n                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;\n                      FUN_00065700();\n                      puVar26 = puVar24 + -4;\n                      puVar23 = puVar24 + -4;\n                      pppppuVar15 = (*local_13c)[2];\n                      if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }\n                      if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }\n                      iVar19 = (int)local_f0 * 4;\n                      pppppuVar18 = param_1[0xe][(int)local_f0];\n                      pppppppuVar29 = extraout_ECX_06;\n                      pppppppuVar22 = param_1;\n                      goto LAB_000a2f0d;\n                    }" ({ "{") (expression_statement "local_80 = local_f0;" (assignment_expression "local_80 = local_f0" (identifier "local_80") (= "=") (identifier "local_f0")) (; ";")) (expression_statement "local_170 = *(uint ********)(param_2 + 0x158);" (assignment_expression "local_170 = *(uint ********)(param_2 + 0x158)" (identifier "local_170") (= "=") (pointer_expression "*(uint ********)(param_2 + 0x158)" (* "*") (cast_expression "(uint ********)(param_2 + 0x158)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(param_2 + 0x158)" (( "(") (binary_expression "param_2 + 0x158" (identifier "param_2") (+ "+") (number_literal "0x158")) () ")"))))) (; ";")) (expression_statement "local_84 = param_1;" (assignment_expression "local_84 = param_1" (identifier "local_84") (= "=") (identifier "param_1")) (; ";")) (expression_statement "local_178 = (uint *******)&local_84;" (assignment_expression "local_178 = (uint *******)&local_84" (identifier "local_178") (= "=") (cast_expression "(uint *******)&local_84" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&local_84" (& "&") (identifier "local_84")))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -8) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_178" (pointer_expression "*(uint ********)(puVar24 + -8)" (* "*") (cast_expression "(uint ********)(puVar24 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_178")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_170 + 10;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_170 + 10" (pointer_expression "*(uint ********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "local_170 + 10" (identifier "local_170") (+ "+") (number_literal "10"))) (; ";")) (expression_statement "*(int **)(puVar24 + -0x10) = &local_110;" (assignment_expression "*(int **)(puVar24 + -0x10) = &local_110" (pointer_expression "*(int **)(puVar24 + -0x10)" (* "*") (cast_expression "(int **)(puVar24 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_110" (& "&") (identifier "local_110"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2ed3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2ed3")) (; ";")) (expression_statement "FUN_00065700();" (call_expression "FUN_00065700()" (identifier "FUN_00065700") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar26 = puVar24 + -4;" (assignment_expression "puVar26 = puVar24 + -4" (identifier "puVar26") (= "=") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4"))) (; ";")) (expression_statement "puVar23 = puVar24 + -4;" (assignment_expression "puVar23 = puVar24 + -4" (identifier "puVar23") (= "=") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4"))) (; ";")) (expression_statement "pppppuVar15 = (*local_13c)[2];" (assignment_expression "pppppuVar15 = (*local_13c)[2]" (identifier "pppppuVar15") (= "=") (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]"))) (; ";")) (if_statement "if (local_110 == 0) {\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }" (if "if") (parenthesized_expression "(local_110 == 0)" (( "(") (binary_expression "local_110 == 0" (identifier "local_110") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                        if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }\n                        pppppppuVar29 = extraout_ECX_06;\n                        pppppppuVar27 = local_f0;\n                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }\n                        goto LAB_000a2c3a;\n                      }" ({ "{") (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }" (if "if") (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar15 == (uint *****)0x0" (identifier "pppppuVar15") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                          *(undefined4 *)(puVar24 + -8) = 0;\n                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                    \n                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;\n                          FUN_0005f0b0();\n                        }" ({ "{") (expression_statement "*(undefined4 *)(puVar24 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0x5c")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa43a7;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa43a7" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0xa43a7")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "pppppppuVar29 = extraout_ECX_06;" (assignment_expression "pppppppuVar29 = extraout_ECX_06" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_06")) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (if_statement "if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }" (if "if") (parenthesized_expression "(*(char *)((int)pppppuVar15 + 0x2e55) != '\0')" (( "(") (binary_expression "*(char *)((int)pppppuVar15 + 0x2e55) != '\0'" (pointer_expression "*(char *)((int)pppppuVar15 + 0x2e55)" (* "*") (cast_expression "(char *)((int)pppppuVar15 + 0x2e55)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppuVar15 + 0x2e55)" (( "(") (binary_expression "(int)pppppuVar15 + 0x2e55" (cast_expression "(int)pppppuVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppuVar15")) (+ "+") (number_literal "0x2e55")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                          ppppppuVar21 = param_1[1];\n                          pppppppuVar22 = (uint *******)(*param_1)[0x10];\n                          if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }\n                          local_12c = local_84;\n                          ppppppuVar17 = *local_1a4;\n                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;\n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;\n                          uVar12 = gettext();\n                          pppppppuVar22 = local_120;\n                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;\n                          *(uint ********)(puVar24 + -0x10) = local_12c;\n                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;\n                          *(undefined4 *)(puVar24 + -0x18) = uVar12;\n                    \n                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;\n                          FUN_0005ad60();\n                          puVar26 = puVar24 + -8;\n                          pppppppuVar29 = extraout_ECX_14;\n                          pppppppuVar27 = local_f0;\n                          if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }\n                        }" ({ "{") (expression_statement "ppppppuVar21 = param_1[1];" (assignment_expression "ppppppuVar21 = param_1[1]" (identifier "ppppppuVar21") (= "=") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)(*param_1)[0x10];" (assignment_expression "pppppppuVar22 = (uint *******)(*param_1)[0x10]" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)(*param_1)[0x10]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "(*param_1)[0x10]" (parenthesized_expression "(*param_1)" (( "(") (pointer_expression "*param_1" (* "*") (identifier "param_1")) () ")")) ([ "[") (number_literal "0x10") (] "]")))) (; ";")) (if_statement "if (pppppppuVar22 == local_120 + -0x99678) {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }\n                          else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }" (if "if") (parenthesized_expression "(pppppppuVar22 == local_120 + -0x99678)" (( "(") (binary_expression "pppppppuVar22 == local_120 + -0x99678" (identifier "pppppppuVar22") (== "==") (binary_expression "local_120 + -0x99678" (identifier "local_120") (+ "+") (number_literal "-0x99678"))) () ")")) (compound_statement "{\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                    \n                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;\n                            FUN_0004e830();\n                          }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -0xc) = local_f0;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_f0" (pointer_expression "*(uint ********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1 + 0x24;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1 + 0x24" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "param_1 + 0x24" (identifier "param_1") (+ "+") (number_literal "0x24"))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_178")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa3909;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa3909" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0xa3909")) (; ";")) (expression_statement "FUN_0004e830();" (call_expression "FUN_0004e830()" (identifier "FUN_0004e830") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }" (else "else") (compound_statement "{\n                            *(uint ********)(puVar24 + -0xc) = local_f0;\n                            *(uint ********)(puVar24 + -0x10) = param_1;\n                            *(uint ********)(puVar24 + -0x14) = local_178;\n                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;\n                            (*(code *)pppppppuVar22)();\n                          }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -0xc) = local_f0;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_f0" (pointer_expression "*(uint ********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_178;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_178" (pointer_expression "*(uint ********)(puVar24 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_178")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa42a2;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa42a2" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0xa42a2")) (; ";")) (expression_statement "(*(code *)pppppppuVar22)();" (call_expression "(*(code *)pppppppuVar22)()" (parenthesized_expression "(*(code *)pppppppuVar22)" (( "(") (pointer_expression "*(code *)pppppppuVar22" (* "*") (cast_expression "(code *)pppppppuVar22" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (expression_statement "local_12c = local_84;" (assignment_expression "local_12c = local_84" (identifier "local_12c") (= "=") (identifier "local_84")) (; ";")) (expression_statement "ppppppuVar17 = *local_1a4;" (assignment_expression "ppppppuVar17 = *local_1a4" (identifier "ppppppuVar17") (= "=") (pointer_expression "*local_1a4" (* "*") (identifier "local_1a4"))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a" (pointer_expression "*(uint ********)(puVar24 + -0x18)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x18)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (binary_expression "local_120 + -0x3747a" (identifier "local_120") (+ "+") (number_literal "-0x3747a"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = 0xa3934;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = 0xa3934" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x1c)" (( "(") (binary_expression "puVar24 + -0x1c" (identifier "puVar24") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0xa3934")) (; ";")) (expression_statement "uVar12 = gettext();" (assignment_expression "uVar12 = gettext()" (identifier "uVar12") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";")) (expression_statement "*(uint *******)(puVar24 + -0xc) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar24 + -0xc) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar24 + -0xc)" (* "*") (cast_expression "(uint *******)(puVar24 + -0xc)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "ppppppuVar21")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint *******)(puVar24 + -0x14) = ppppppuVar17;" (assignment_expression "*(uint *******)(puVar24 + -0x14) = ppppppuVar17" (pointer_expression "*(uint *******)(puVar24 + -0x14)" (* "*") (cast_expression "(uint *******)(puVar24 + -0x14)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "ppppppuVar17")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = 0xa394e;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = 0xa394e" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x1c)" (( "(") (binary_expression "puVar24 + -0x1c" (identifier "puVar24") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0xa394e")) (; ";")) (expression_statement "FUN_0005ad60();" (call_expression "FUN_0005ad60()" (identifier "FUN_0005ad60") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar26 = puVar24 + -8;" (assignment_expression "puVar26 = puVar24 + -8" (identifier "puVar26") (= "=") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_14;" (assignment_expression "pppppppuVar29 = extraout_ECX_14" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_14")) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (if_statement "if (local_84 != local_7c) {\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }" (if "if") (parenthesized_expression "(local_84 != local_7c)" (( "(") (binary_expression "local_84 != local_7c" (identifier "local_84") (!= "!=") (identifier "local_7c")) () ")")) (compound_statement "{\n                            *(uint ********)(puVar24 + -0x18) = local_84;\n                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;\n                            FUN_001807a0();\n                            puVar26 = puVar24 + -8;\n                            pppppppuVar29 = extraout_ECX_15;\n                            pppppppuVar27 = local_f0;\n                          }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -0x18) = local_84;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_84" (pointer_expression "*(uint ********)(puVar24 + -0x18)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x18)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_84")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x1c) = 0xa3968;" (assignment_expression "*(undefined4 *)(puVar24 + -0x1c) = 0xa3968" (pointer_expression "*(undefined4 *)(puVar24 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x1c)" (( "(") (binary_expression "puVar24 + -0x1c" (identifier "puVar24") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0xa3968")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar26 = puVar24 + -8;" (assignment_expression "puVar26 = puVar24 + -8" (identifier "puVar26") (= "=") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_15;" (assignment_expression "pppppppuVar29 = extraout_ECX_15" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_15")) (; ";")) (expression_statement "pppppppuVar27 = local_f0;" (assignment_expression "pppppppuVar27 = local_f0" (identifier "pppppppuVar27") (= "=") (identifier "local_f0")) (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_000a2c3a;" (goto "goto") (statement_identifier "LAB_000a2c3a") (; ";")) (} "}"))) (if_statement "if (pppppuVar15 == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }" (if "if") (parenthesized_expression "(pppppuVar15 == (uint *****)0x0)" (( "(") (binary_expression "pppppuVar15 == (uint *****)0x0" (identifier "pppppuVar15") (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                        *(undefined4 *)(puVar24 + -8) = 0;\n                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;\n                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;\n                    \n                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;\n                        FUN_0005f0b0();\n                      }" ({ "{") (expression_statement "*(undefined4 *)(puVar24 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x10) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x10) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0x5c")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x14)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x14)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x18) = 0xa434c;" (assignment_expression "*(undefined4 *)(puVar24 + -0x18) = 0xa434c" (pointer_expression "*(undefined4 *)(puVar24 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0xa434c")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar19 = (int)local_f0 * 4;" (assignment_expression "iVar19 = (int)local_f0 * 4" (identifier "iVar19") (= "=") (binary_expression "(int)local_f0 * 4" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "pppppuVar18 = param_1[0xe][(int)local_f0];" (assignment_expression "pppppuVar18 = param_1[0xe][(int)local_f0]" (identifier "pppppuVar18") (= "=") (subscript_expression "param_1[0xe][(int)local_f0]" (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]")) ([ "[") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (] "]"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_06;" (assignment_expression "pppppppuVar29 = extraout_ECX_06" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_06")) (; ";")) (expression_statement "pppppppuVar22 = param_1;" (assignment_expression "pppppppuVar22 = param_1" (identifier "pppppppuVar22") (= "=") (identifier "param_1")) (; ";")) (goto_statement "goto LAB_000a2f0d;" (goto "goto") (statement_identifier "LAB_000a2f0d") (; ";")) (} "}"))) (expression_statement "pppppppuVar29 = local_ec;" (assignment_expression "pppppppuVar29 = local_ec" (identifier "pppppppuVar29") (= "=") (identifier "local_ec")) (; ";")) (if_statement "if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;" (if "if") (parenthesized_expression "(pppppuVar15[0x164d] != (uint ****)0x0)" (( "(") (binary_expression "pppppuVar15[0x164d] != (uint ****)0x0" (subscript_expression "pppppuVar15[0x164d]" (identifier "pppppuVar15") ([ "[") (number_literal "0x164d") (] "]")) (!= "!=") (cast_expression "(uint ****)0x0" (( "(") (type_descriptor "uint ****" (type_identifier "uint") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000a2cf0;" (goto "goto") (statement_identifier "LAB_000a2cf0") (; ";"))) (} "}")))) (expression_statement "puVar24 = puVar23;" (assignment_expression "puVar24 = puVar23" (identifier "puVar24") (= "=") (identifier "puVar23")) (; ";")) (if_statement "if (pppppuVar18 != (uint *****)0x2) {\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }" (if "if") (parenthesized_expression "(pppppuVar18 != (uint *****)0x2)" (( "(") (binary_expression "pppppuVar18 != (uint *****)0x2" (identifier "pppppuVar18") (!= "!=") (cast_expression "(uint *****)0x2" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x2"))) () ")")) (compound_statement "{\n                    if (local_136 != '\0') goto LAB_000a2b6b;\nLAB_000a2d10:\n                    pppppppuVar29 = local_f0;\n                    local_170 = *(uint ********)((int)local_158 + iVar19);\n                    *(uint *********)(puVar24 + -0x10) = &local_84;\n                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);\n                    *(uint ********)(puVar24 + -0x18) = local_170;\n                    *(uint ********)(puVar24 + -0x1c) = local_124;\n                    *(uint ********)(puVar24 + -0x20) = local_154;\n                    *(uint ********)(puVar24 + -0x24) = local_12c;\n                    *(uint ********)(puVar24 + -0x28) = local_f0;\n                    *(uint ********)(puVar24 + -0x2c) = param_1;\n                    *(int *)(puVar24 + -0x30) = param_3;\n                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;\n                    uVar12 = FUN_0008ff40();\n                    pppppppuVar27 = local_120;\n                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;\n                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);\n                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;\n                    if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }\n                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }\n                    pppppppuVar29 = local_84;\n                    if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }\n                  }" ({ "{") (if_statement "if (local_136 != '\0') goto LAB_000a2b6b;" (if "if") (parenthesized_expression "(local_136 != '\0')" (( "(") (binary_expression "local_136 != '\0'" (identifier "local_136") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000a2b6b;" (goto "goto") (statement_identifier "LAB_000a2b6b") (; ";"))) (labeled_statement "LAB_000a2d10:\n                    pppppppuVar29 = local_f0;" (statement_identifier "LAB_000a2d10") (: ":") (expression_statement "pppppppuVar29 = local_f0;" (assignment_expression "pppppppuVar29 = local_f0" (identifier "pppppppuVar29") (= "=") (identifier "local_f0")) (; ";"))) (expression_statement "local_170 = *(uint ********)((int)local_158 + iVar19);" (assignment_expression "local_170 = *(uint ********)((int)local_158 + iVar19)" (identifier "local_170") (= "=") (pointer_expression "*(uint ********)((int)local_158 + iVar19)" (* "*") (cast_expression "(uint ********)((int)local_158 + iVar19)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "((int)local_158 + iVar19)" (( "(") (binary_expression "(int)local_158 + iVar19" (cast_expression "(int)local_158" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_158")) (+ "+") (identifier "iVar19")) () ")"))))) (; ";")) (expression_statement "*(uint *********)(puVar24 + -0x10) = &local_84;" (assignment_expression "*(uint *********)(puVar24 + -0x10) = &local_84" (pointer_expression "*(uint *********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint *********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_84" (& "&") (identifier "local_84"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19)" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)((int)local_15c + iVar19)" (* "*") (cast_expression "(undefined4 *)((int)local_15c + iVar19)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_15c + iVar19)" (( "(") (binary_expression "(int)local_15c + iVar19" (cast_expression "(int)local_15c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_15c")) (+ "+") (identifier "iVar19")) () ")"))))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x18) = local_170;" (assignment_expression "*(uint ********)(puVar24 + -0x18) = local_170" (pointer_expression "*(uint ********)(puVar24 + -0x18)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x18)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x18)" (( "(") (binary_expression "puVar24 + -0x18" (identifier "puVar24") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_170")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x1c) = local_124;" (assignment_expression "*(uint ********)(puVar24 + -0x1c) = local_124" (pointer_expression "*(uint ********)(puVar24 + -0x1c)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x1c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x1c)" (( "(") (binary_expression "puVar24 + -0x1c" (identifier "puVar24") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_124")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x20) = local_154;" (assignment_expression "*(uint ********)(puVar24 + -0x20) = local_154" (pointer_expression "*(uint ********)(puVar24 + -0x20)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x20)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x20)" (( "(") (binary_expression "puVar24 + -0x20" (identifier "puVar24") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_154")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x24) = local_12c;" (assignment_expression "*(uint ********)(puVar24 + -0x24) = local_12c" (pointer_expression "*(uint ********)(puVar24 + -0x24)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x24)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x24)" (( "(") (binary_expression "puVar24 + -0x24" (identifier "puVar24") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "local_12c")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x28) = local_f0;" (assignment_expression "*(uint ********)(puVar24 + -0x28) = local_f0" (pointer_expression "*(uint ********)(puVar24 + -0x28)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x28)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x28)" (( "(") (binary_expression "puVar24 + -0x28" (identifier "puVar24") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (identifier "local_f0")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x2c) = param_1;" (assignment_expression "*(uint ********)(puVar24 + -0x2c) = param_1" (pointer_expression "*(uint ********)(puVar24 + -0x2c)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x2c)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x2c)" (( "(") (binary_expression "puVar24 + -0x2c" (identifier "puVar24") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(int *)(puVar24 + -0x30) = param_3;" (assignment_expression "*(int *)(puVar24 + -0x30) = param_3" (pointer_expression "*(int *)(puVar24 + -0x30)" (* "*") (cast_expression "(int *)(puVar24 + -0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x30)" (( "(") (binary_expression "puVar24 + -0x30" (identifier "puVar24") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x34) = 0xa2d54;" (assignment_expression "*(undefined4 *)(puVar24 + -0x34) = 0xa2d54" (pointer_expression "*(undefined4 *)(puVar24 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x34)" (( "(") (binary_expression "puVar24 + -0x34" (identifier "puVar24") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0xa2d54")) (; ";")) (expression_statement "uVar12 = FUN_0008ff40();" (assignment_expression "uVar12 = FUN_0008ff40()" (identifier "uVar12") (= "=") (call_expression "FUN_0008ff40()" (identifier "FUN_0008ff40") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pppppppuVar27 = local_120;" (assignment_expression "pppppppuVar27 = local_120" (identifier "pppppppuVar27") (= "=") (identifier "local_120")) (; ";")) (expression_statement "*(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;" (assignment_expression "*(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12" (pointer_expression "*(undefined4 *)((int)param_1[0xe] + iVar19)" (* "*") (cast_expression "(undefined4 *)((int)param_1[0xe] + iVar19)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_1[0xe] + iVar19)" (( "(") (binary_expression "(int)param_1[0xe] + iVar19" (cast_expression "(int)param_1[0xe]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]"))) (+ "+") (identifier "iVar19")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);" (assignment_expression "pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)((uint)local_80 & (uint)local_84)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((uint)local_80 & (uint)local_84)" (( "(") (binary_expression "(uint)local_80 & (uint)local_84" (cast_expression "(uint)local_80" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_80")) (& "&") (cast_expression "(uint)local_84" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_84"))) () ")")))) (; ";")) (expression_statement "ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;" (assignment_expression "ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2" (identifier "ppppppuVar21") (= "=") (binary_expression "param_1[0x21] + (int)pppppppuVar29 * 2" (subscript_expression "param_1[0x21]" (identifier "param_1") ([ "[") (number_literal "0x21") (] "]")) (+ "+") (binary_expression "(int)pppppppuVar29 * 2" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (* "*") (number_literal "2")))) (; ";")) (if_statement "if (pppppppuVar22 == (uint *******)0xffffffff) {\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }\n                    else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }" (if "if") (parenthesized_expression "(pppppppuVar22 == (uint *******)0xffffffff)" (( "(") (binary_expression "pppppppuVar22 == (uint *******)0xffffffff" (identifier "pppppppuVar22") (== "==") (cast_expression "(uint *******)0xffffffff" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xffffffff"))) () ")")) (compound_statement "{\n                      *ppppppuVar21 = (uint *****)0xffffffff;\n                      ppppppuVar21[1] = (uint *****)0xffffffff;\n                    }" ({ "{") (expression_statement "*ppppppuVar21 = (uint *****)0xffffffff;" (assignment_expression "*ppppppuVar21 = (uint *****)0xffffffff" (pointer_expression "*ppppppuVar21" (* "*") (identifier "ppppppuVar21")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppppppuVar21[1] = (uint *****)0xffffffff;" (assignment_expression "ppppppuVar21[1] = (uint *****)0xffffffff" (subscript_expression "ppppppuVar21[1]" (identifier "ppppppuVar21") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(uint *****)0xffffffff" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}")) (else_clause "else {\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }" (else "else") (compound_statement "{\n                      *ppppppuVar21 = (uint *****)local_84;\n                      ppppppuVar21[1] = (uint *****)local_80;\n                    }" ({ "{") (expression_statement "*ppppppuVar21 = (uint *****)local_84;" (assignment_expression "*ppppppuVar21 = (uint *****)local_84" (pointer_expression "*ppppppuVar21" (* "*") (identifier "ppppppuVar21")) (= "=") (cast_expression "(uint *****)local_84" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (identifier "local_84"))) (; ";")) (expression_statement "ppppppuVar21[1] = (uint *****)local_80;" (assignment_expression "ppppppuVar21[1] = (uint *****)local_80" (subscript_expression "ppppppuVar21[1]" (identifier "ppppppuVar21") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(uint *****)local_80" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (identifier "local_80"))) (; ";")) (} "}")))) (if_statement "if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)) {\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }" (if "if") (parenthesized_expression "((((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0))" (( "(") (binary_expression "(((uint)local_84 & (uint)local_80) == 0xffffffff) &&\n                       (local_170 != (uint *******)0x0)" (parenthesized_expression "(((uint)local_84 & (uint)local_80) == 0xffffffff)" (( "(") (binary_expression "((uint)local_84 & (uint)local_80) == 0xffffffff" (parenthesized_expression "((uint)local_84 & (uint)local_80)" (( "(") (binary_expression "(uint)local_84 & (uint)local_80" (cast_expression "(uint)local_84" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_84")) (& "&") (cast_expression "(uint)local_80" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_80"))) () ")")) (== "==") (number_literal "0xffffffff")) () ")")) (&& "&&") (parenthesized_expression "(local_170 != (uint *******)0x0)" (( "(") (binary_expression "local_170 != (uint *******)0x0" (identifier "local_170") (!= "!=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (compound_statement "{\n                      *(byte *)(param_1 + 0x13) = 1;\n                    }" ({ "{") (expression_statement "*(byte *)(param_1 + 0x13) = 1;" (assignment_expression "*(byte *)(param_1 + 0x13) = 1" (pointer_expression "*(byte *)(param_1 + 0x13)" (* "*") (cast_expression "(byte *)(param_1 + 0x13)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x13)" (( "(") (binary_expression "param_1 + 0x13" (identifier "param_1") (+ "+") (number_literal "0x13")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}"))) (expression_statement "pppppppuVar29 = local_84;" (assignment_expression "pppppppuVar29 = local_84" (identifier "pppppppuVar29") (= "=") (identifier "local_84")) (; ";")) (if_statement "if ((char)local_140 == '\0') {\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }" (if "if") (parenthesized_expression "((char)local_140 == '\0')" (( "(") (binary_expression "(char)local_140 == '\0'" (cast_expression "(char)local_140" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_140")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                      if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }\n                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }\n                    }" ({ "{") (if_statement "if ((*local_13c)[2] == (uint *****)0x0) {\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }" (if "if") (parenthesized_expression "((*local_13c)[2] == (uint *****)0x0)" (( "(") (binary_expression "(*local_13c)[2] == (uint *****)0x0" (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]")) (== "==") (cast_expression "(uint *****)0x0" (( "(") (type_descriptor "uint *****" (type_identifier "uint") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                        *(undefined4 *)(puVar24 + -4) = 0;\n                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;\n                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;\n                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;\n                    \n                    \n                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;\n                        FUN_0005f0b0();\n                      }" ({ "{") (expression_statement "*(undefined4 *)(puVar24 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar24 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar24 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -4)" (( "(") (binary_expression "puVar24 + -4" (identifier "puVar24") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1;" (assignment_expression "*(uint ********)(puVar24 + -8) = local_120 + -0x371c1" (pointer_expression "*(uint ********)(puVar24 + -8)" (* "*") (cast_expression "(uint ********)(puVar24 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_120 + -0x371c1" (identifier "local_120") (+ "+") (number_literal "-0x371c1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0xc) = 0x5c;" (assignment_expression "*(undefined4 *)(puVar24 + -0xc) = 0x5c" (pointer_expression "*(undefined4 *)(puVar24 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x5c")) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x385a4" (identifier "local_120") (+ "+") (number_literal "-0x385a4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa43fb;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa43fb" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa43fb")) (; ";")) (expression_statement "FUN_0005f0b0();" (call_expression "FUN_0005f0b0()" (identifier "FUN_0005f0b0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }" (if "if") (parenthesized_expression "(*(char *)((int)(*local_13c)[2] + 0x192d) != '\0')" (( "(") (binary_expression "*(char *)((int)(*local_13c)[2] + 0x192d) != '\0'" (pointer_expression "*(char *)((int)(*local_13c)[2] + 0x192d)" (* "*") (cast_expression "(char *)((int)(*local_13c)[2] + 0x192d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)(*local_13c)[2] + 0x192d)" (( "(") (binary_expression "(int)(*local_13c)[2] + 0x192d" (cast_expression "(int)(*local_13c)[2]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "(*local_13c)[2]" (parenthesized_expression "(*local_13c)" (( "(") (pointer_expression "*local_13c" (* "*") (identifier "local_13c")) () ")")) ([ "[") (number_literal "2") (] "]"))) (+ "+") (number_literal "0x192d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                        bVar33 = false;\n                        bVar35 = ((uint)local_ec[2] & 2) == 0;\n                        if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }\n                      }" ({ "{") (expression_statement "bVar33 = false;" (assignment_expression "bVar33 = false" (identifier "bVar33") (= "=") (false "false")) (; ";")) (expression_statement "bVar35 = ((uint)local_ec[2] & 2) == 0;" (assignment_expression "bVar35 = ((uint)local_ec[2] & 2) == 0" (identifier "bVar35") (= "=") (binary_expression "((uint)local_ec[2] & 2) == 0" (parenthesized_expression "((uint)local_ec[2] & 2)" (( "(") (binary_expression "(uint)local_ec[2] & 2" (cast_expression "(uint)local_ec[2]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "local_ec[2]" (identifier "local_ec") ([ "[") (number_literal "2") (] "]"))) (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar35) {\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }" (if "if") (parenthesized_expression "(bVar35)" (( "(") (identifier "bVar35") () ")")) (compound_statement "{\n                          pppppppuVar29 = (uint *******)0xc;\n                          pppppppuVar28 = local_12c;\n                          pbVar31 = (byte *)((int)local_120 + -0xe0537);\n                          do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);\n                          bVar34 = false;\n                          bVar33 = (!bVar33 && !bVar35) == bVar33;\n                          if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }\n                          if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }\n                          *local_c4 = (int)local_f0;\n                          local_c4 = local_c4 + 1;\n                        }" ({ "{") (expression_statement "pppppppuVar29 = (uint *******)0xc;" (assignment_expression "pppppppuVar29 = (uint *******)0xc" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)0xc" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xc"))) (; ";")) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" (identifier "pppppppuVar28") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xe0537);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xe0537)" (identifier "pbVar31") (= "=") (cast_expression "(byte *)((int)local_120 + -0xe0537)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_120 + -0xe0537)" (( "(") (binary_expression "(int)local_120 + -0xe0537" (cast_expression "(int)local_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_120")) (+ "+") (number_literal "-0xe0537")) () ")")))) (; ";")) (do_statement "do {\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          } while (bVar35);" (do "do") (compound_statement "{\n                            if (pppppppuVar29 == (uint *******)0x0) break;\n                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;\n                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;\n                            pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                          }" ({ "{") (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" (if "if") (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar29 == (uint *******)0x0" (identifier "pppppppuVar29") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar29 + -1)" (( "(") (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (expression_statement "bVar33 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 < *pbVar31" (identifier "bVar33") (= "=") (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (< "<") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "bVar35 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar28 == *pbVar31" (identifier "bVar35") (= "=") (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (== "==") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 =\n                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar28") (= "=") (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar28")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" (identifier "pbVar31") (= "=") (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" (identifier "pbVar31") (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar35)" (( "(") (identifier "bVar35") () ")")) (; ";")) (expression_statement "bVar34 = false;" (assignment_expression "bVar34 = false" (identifier "bVar34") (= "=") (false "false")) (; ";")) (expression_statement "bVar33 = (!bVar33 && !bVar35) == bVar33;" (assignment_expression "bVar33 = (!bVar33 && !bVar35) == bVar33" (identifier "bVar33") (= "=") (binary_expression "(!bVar33 && !bVar35) == bVar33" (parenthesized_expression "(!bVar33 && !bVar35)" (( "(") (binary_expression "!bVar33 && !bVar35" (unary_expression "!bVar33" (! "!") (identifier "bVar33")) (&& "&&") (unary_expression "!bVar35" (! "!") (identifier "bVar35"))) () ")")) (== "==") (identifier "bVar33"))) (; ";")) (if_statement "if (!bVar33) {\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }" (if "if") (parenthesized_expression "(!bVar33)" (( "(") (unary_expression "!bVar33" (! "!") (identifier "bVar33")) () ")")) (compound_statement "{\n                            pppppppuVar29 = (uint *******)0xd;\n                            pppppppuVar28 = local_12c;\n                            pbVar31 = (byte *)((int)local_120 + -0xdd155);\n                            do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);\n                            bVar35 = false;\n                            bVar33 = (!bVar34 && !bVar33) == bVar34;\n                            if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }\n                          }" ({ "{") (expression_statement "pppppppuVar29 = (uint *******)0xd;" (assignment_expression "pppppppuVar29 = (uint *******)0xd" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)0xd" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xd"))) (; ";")) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" (identifier "pppppppuVar28") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xdd155);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xdd155)" (identifier "pbVar31") (= "=") (cast_expression "(byte *)((int)local_120 + -0xdd155)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_120 + -0xdd155)" (( "(") (binary_expression "(int)local_120 + -0xdd155" (cast_expression "(int)local_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_120")) (+ "+") (number_literal "-0xdd155")) () ")")))) (; ";")) (do_statement "do {\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            } while (bVar33);" (do "do") (compound_statement "{\n                              if (pppppppuVar29 == (uint *******)0x0) break;\n                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;\n                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;\n                              pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                            }" ({ "{") (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" (if "if") (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar29 == (uint *******)0x0" (identifier "pppppppuVar29") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar29 + -1)" (( "(") (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (expression_statement "bVar34 = *(byte *)pppppppuVar28 < *pbVar31;" (assignment_expression "bVar34 = *(byte *)pppppppuVar28 < *pbVar31" (identifier "bVar34") (= "=") (binary_expression "*(byte *)pppppppuVar28 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (< "<") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "bVar33 = *(byte *)pppppppuVar28 == *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 == *pbVar31" (identifier "bVar33") (= "=") (binary_expression "*(byte *)pppppppuVar28 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (== "==") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 =\n                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar28") (= "=") (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar28")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" (identifier "pbVar31") (= "=") (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" (identifier "pbVar31") (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar33)" (( "(") (identifier "bVar33") () ")")) (; ";")) (expression_statement "bVar35 = false;" (assignment_expression "bVar35 = false" (identifier "bVar35") (= "=") (false "false")) (; ";")) (expression_statement "bVar33 = (!bVar34 && !bVar33) == bVar34;" (assignment_expression "bVar33 = (!bVar34 && !bVar33) == bVar34" (identifier "bVar33") (= "=") (binary_expression "(!bVar34 && !bVar33) == bVar34" (parenthesized_expression "(!bVar34 && !bVar33)" (( "(") (binary_expression "!bVar34 && !bVar33" (unary_expression "!bVar34" (! "!") (identifier "bVar34")) (&& "&&") (unary_expression "!bVar33" (! "!") (identifier "bVar33"))) () ")")) (== "==") (identifier "bVar34"))) (; ";")) (if_statement "if (!bVar33) {\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }" (if "if") (parenthesized_expression "(!bVar33)" (( "(") (unary_expression "!bVar33" (! "!") (identifier "bVar33")) () ")")) (compound_statement "{\n                              pppppppuVar29 = (uint *******)0xd;\n                              pppppppuVar22 = local_12c;\n                              pbVar31 = (byte *)((int)local_120 + -0xe052b);\n                              do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);\n                              bVar34 = false;\n                              bVar33 = (!bVar35 && !bVar33) == bVar35;\n                              pppppppuVar22 = local_120;\n                              if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }\n                              if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }\n                              *local_b8 = (int)local_f0;\n                              local_b8 = local_b8 + 1;\n                              goto LAB_000a23a1;\n                            }" ({ "{") (expression_statement "pppppppuVar29 = (uint *******)0xd;" (assignment_expression "pppppppuVar29 = (uint *******)0xd" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)0xd" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xd"))) (; ";")) (expression_statement "pppppppuVar22 = local_12c;" (assignment_expression "pppppppuVar22 = local_12c" (identifier "pppppppuVar22") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pbVar31 = (byte *)((int)local_120 + -0xe052b);" (assignment_expression "pbVar31 = (byte *)((int)local_120 + -0xe052b)" (identifier "pbVar31") (= "=") (cast_expression "(byte *)((int)local_120 + -0xe052b)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_120 + -0xe052b)" (( "(") (binary_expression "(int)local_120 + -0xe052b" (cast_expression "(int)local_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_120")) (+ "+") (number_literal "-0xe052b")) () ")")))) (; ";")) (do_statement "do {\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              } while (bVar33);" (do "do") (compound_statement "{\n                                if (pppppppuVar29 == (uint *******)0x0) break;\n                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;\n                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;\n                                pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);\n                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;\n                              }" ({ "{") (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" (if "if") (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar29 == (uint *******)0x0" (identifier "pppppppuVar29") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar29 + -1)" (( "(") (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (expression_statement "bVar35 = *(byte *)pppppppuVar22 < *pbVar31;" (assignment_expression "bVar35 = *(byte *)pppppppuVar22 < *pbVar31" (identifier "bVar35") (= "=") (binary_expression "*(byte *)pppppppuVar22 < *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" (* "*") (cast_expression "(byte *)pppppppuVar22" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) (< "<") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "bVar33 = *(byte *)pppppppuVar22 == *pbVar31;" (assignment_expression "bVar33 = *(byte *)pppppppuVar22 == *pbVar31" (identifier "bVar33") (= "=") (binary_expression "*(byte *)pppppppuVar22 == *pbVar31" (pointer_expression "*(byte *)pppppppuVar22" (* "*") (cast_expression "(byte *)pppppppuVar22" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar22"))) (== "==") (pointer_expression "*pbVar31" (* "*") (identifier "pbVar31")))) (; ";")) (expression_statement "pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar22 =\n                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar22") (= "=") (cast_expression "(uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar22 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar22 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar22")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;" (assignment_expression "pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1" (identifier "pbVar31") (= "=") (binary_expression "pbVar31 + (uint)bVar36 * -2 + 1" (binary_expression "pbVar31 + (uint)bVar36 * -2" (identifier "pbVar31") (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar33)" (( "(") (identifier "bVar33") () ")")) (; ";")) (expression_statement "bVar34 = false;" (assignment_expression "bVar34 = false" (identifier "bVar34") (= "=") (false "false")) (; ";")) (expression_statement "bVar33 = (!bVar35 && !bVar33) == bVar35;" (assignment_expression "bVar33 = (!bVar35 && !bVar33) == bVar35" (identifier "bVar33") (= "=") (binary_expression "(!bVar35 && !bVar33) == bVar35" (parenthesized_expression "(!bVar35 && !bVar33)" (( "(") (binary_expression "!bVar35 && !bVar33" (unary_expression "!bVar35" (! "!") (identifier "bVar35")) (&& "&&") (unary_expression "!bVar33" (! "!") (identifier "bVar33"))) () ")")) (== "==") (identifier "bVar35"))) (; ";")) (expression_statement "pppppppuVar22 = local_120;" (assignment_expression "pppppppuVar22 = local_120" (identifier "pppppppuVar22") (= "=") (identifier "local_120")) (; ";")) (if_statement "if (!bVar33) {\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }" (if "if") (parenthesized_expression "(!bVar33)" (( "(") (unary_expression "!bVar33" (! "!") (identifier "bVar33")) () ")")) (compound_statement "{\n                                pppppppuVar29 = (uint *******)0xe;\n                                pppppppuVar28 = local_12c;\n                                pppppppuVar32 = local_120 + -0x37452;\n                                do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);\n                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;\n                              }" ({ "{") (expression_statement "pppppppuVar29 = (uint *******)0xe;" (assignment_expression "pppppppuVar29 = (uint *******)0xe" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)0xe" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xe"))) (; ";")) (expression_statement "pppppppuVar28 = local_12c;" (assignment_expression "pppppppuVar28 = local_12c" (identifier "pppppppuVar28") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "pppppppuVar32 = local_120 + -0x37452;" (assignment_expression "pppppppuVar32 = local_120 + -0x37452" (identifier "pppppppuVar32") (= "=") (binary_expression "local_120 + -0x37452" (identifier "local_120") (+ "+") (number_literal "-0x37452"))) (; ";")) (do_statement "do {\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                } while (bVar33);" (do "do") (compound_statement "{\n                                  if (pppppppuVar29 == (uint *******)0x0) break;\n                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);\n                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;\n                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;\n                                  pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);\n                                  pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);\n                                }" ({ "{") (if_statement "if (pppppppuVar29 == (uint *******)0x0) break;" (if "if") (parenthesized_expression "(pppppppuVar29 == (uint *******)0x0)" (( "(") (binary_expression "pppppppuVar29 == (uint *******)0x0" (identifier "pppppppuVar29") (== "==") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);" (assignment_expression "pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1)" (identifier "pppppppuVar29") (= "=") (cast_expression "(uint *******)((int)pppppppuVar29 + -1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar29 + -1)" (( "(") (binary_expression "(int)pppppppuVar29 + -1" (cast_expression "(int)pppppppuVar29" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar29")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (expression_statement "bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;" (assignment_expression "bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32" (identifier "bVar34") (= "=") (binary_expression "*(byte *)pppppppuVar28 < *(byte *)pppppppuVar32" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (< "<") (pointer_expression "*(byte *)pppppppuVar32" (* "*") (cast_expression "(byte *)pppppppuVar32" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar32"))))) (; ";")) (expression_statement "bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;" (assignment_expression "bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32" (identifier "bVar33") (= "=") (binary_expression "*(byte *)pppppppuVar28 == *(byte *)pppppppuVar32" (pointer_expression "*(byte *)pppppppuVar28" (* "*") (cast_expression "(byte *)pppppppuVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar28"))) (== "==") (pointer_expression "*(byte *)pppppppuVar32" (* "*") (cast_expression "(byte *)pppppppuVar32" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppuVar32"))))) (; ";")) (expression_statement "pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar28 =\n                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar28") (= "=") (cast_expression "(uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar28 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar28 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar28")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);" (assignment_expression "pppppppuVar32 =\n                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1)" (identifier "pppppppuVar32") (= "=") (cast_expression "(uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppuVar32 + (uint)bVar36 * -2 + 1)" (( "(") (binary_expression "(int)pppppppuVar32 + (uint)bVar36 * -2 + 1" (binary_expression "(int)pppppppuVar32 + (uint)bVar36 * -2" (cast_expression "(int)pppppppuVar32" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppuVar32")) (+ "+") (binary_expression "(uint)bVar36 * -2" (cast_expression "(uint)bVar36" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar36")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar33)" (( "(") (identifier "bVar33") () ")")) (; ";")) (if_statement "if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;" (if "if") (parenthesized_expression "((!bVar34 && !bVar33) != bVar34)" (( "(") (binary_expression "(!bVar34 && !bVar33) != bVar34" (parenthesized_expression "(!bVar34 && !bVar33)" (( "(") (binary_expression "!bVar34 && !bVar33" (unary_expression "!bVar34" (! "!") (identifier "bVar34")) (&& "&&") (unary_expression "!bVar33" (! "!") (identifier "bVar33"))) () ")")) (!= "!=") (identifier "bVar34")) () ")")) (goto_statement "goto LAB_000a23a1;" (goto "goto") (statement_identifier "LAB_000a23a1") (; ";"))) (} "}"))) (if_statement "if (local_b8 == local_b4) {\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }" (if "if") (parenthesized_expression "(local_b8 == local_b4)" (( "(") (binary_expression "local_b8 == local_b4" (identifier "local_b8") (== "==") (identifier "local_b4")) () ")")) (compound_statement "{\n                                *(uint *********)(puVar24 + -8) = &local_f0;\n                                *(int **)(puVar24 + -0xc) = local_b8;\n                                puVar25 = puVar24 + -0x10;\n                                *(int ***)(puVar24 + -0x10) = &local_bc;\n                    \n                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;\n                                FUN_00047200();\n                                pppppppuVar29 = extraout_ECX_31;\n                                pppppppuVar22 = pppppppuVar27;\n                                goto LAB_000a3e57;\n                              }" ({ "{") (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" (* "*") (cast_expression "(uint *********)(puVar24 + -8)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_f0" (& "&") (identifier "local_f0"))) (; ";")) (expression_statement "*(int **)(puVar24 + -0xc) = local_b8;" (assignment_expression "*(int **)(puVar24 + -0xc) = local_b8" (pointer_expression "*(int **)(puVar24 + -0xc)" (* "*") (cast_expression "(int **)(puVar24 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_b8")) (; ";")) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" (identifier "puVar25") (= "=") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10"))) (; ";")) (expression_statement "*(int ***)(puVar24 + -0x10) = &local_bc;" (assignment_expression "*(int ***)(puVar24 + -0x10) = &local_bc" (pointer_expression "*(int ***)(puVar24 + -0x10)" (* "*") (cast_expression "(int ***)(puVar24 + -0x10)" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_bc" (& "&") (identifier "local_bc"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa42d3;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa42d3" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa42d3")) (; ";")) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" (identifier "FUN_00047200") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_31;" (assignment_expression "pppppppuVar29 = extraout_ECX_31" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_31")) (; ";")) (expression_statement "pppppppuVar22 = pppppppuVar27;" (assignment_expression "pppppppuVar22 = pppppppuVar27" (identifier "pppppppuVar22") (= "=") (identifier "pppppppuVar27")) (; ";")) (goto_statement "goto LAB_000a3e57;" (goto "goto") (statement_identifier "LAB_000a3e57") (; ";")) (} "}"))) (expression_statement "*local_b8 = (int)local_f0;" (assignment_expression "*local_b8 = (int)local_f0" (pointer_expression "*local_b8" (* "*") (identifier "local_b8")) (= "=") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0"))) (; ";")) (expression_statement "local_b8 = local_b8 + 1;" (assignment_expression "local_b8 = local_b8 + 1" (identifier "local_b8") (= "=") (binary_expression "local_b8 + 1" (identifier "local_b8") (+ "+") (number_literal "1"))) (; ";")) (goto_statement "goto LAB_000a23a1;" (goto "goto") (statement_identifier "LAB_000a23a1") (; ";")) (} "}"))) (} "}"))) (if_statement "if (local_c4 == local_c0) {\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }" (if "if") (parenthesized_expression "(local_c4 == local_c0)" (( "(") (binary_expression "local_c4 == local_c0" (identifier "local_c4") (== "==") (identifier "local_c0")) () ")")) (compound_statement "{\n                            *(uint *********)(puVar24 + -8) = &local_f0;\n                            *(int **)(puVar24 + -0xc) = local_c4;\n                            puVar25 = puVar24 + -0x10;\n                            *(int ***)(puVar24 + -0x10) = &local_c8;\n                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;\n                            FUN_00047200();\n                            pppppppuVar29 = extraout_ECX_30;\n                            goto LAB_000a3e57;\n                          }" ({ "{") (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" (* "*") (cast_expression "(uint *********)(puVar24 + -8)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_f0" (& "&") (identifier "local_f0"))) (; ";")) (expression_statement "*(int **)(puVar24 + -0xc) = local_c4;" (assignment_expression "*(int **)(puVar24 + -0xc) = local_c4" (pointer_expression "*(int **)(puVar24 + -0xc)" (* "*") (cast_expression "(int **)(puVar24 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_c4")) (; ";")) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" (identifier "puVar25") (= "=") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10"))) (; ";")) (expression_statement "*(int ***)(puVar24 + -0x10) = &local_c8;" (assignment_expression "*(int ***)(puVar24 + -0x10) = &local_c8" (pointer_expression "*(int ***)(puVar24 + -0x10)" (* "*") (cast_expression "(int ***)(puVar24 + -0x10)" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_c8" (& "&") (identifier "local_c8"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa428a;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa428a" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa428a")) (; ";")) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" (identifier "FUN_00047200") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_30;" (assignment_expression "pppppppuVar29 = extraout_ECX_30" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_30")) (; ";")) (goto_statement "goto LAB_000a3e57;" (goto "goto") (statement_identifier "LAB_000a3e57") (; ";")) (} "}"))) (expression_statement "*local_c4 = (int)local_f0;" (assignment_expression "*local_c4 = (int)local_f0" (pointer_expression "*local_c4" (* "*") (identifier "local_c4")) (= "=") (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0"))) (; ";")) (expression_statement "local_c4 = local_c4 + 1;" (assignment_expression "local_c4 = local_c4 + 1" (identifier "local_c4") (= "=") (binary_expression "local_c4 + 1" (identifier "local_c4") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (} "}"))) (} "}"))) (} "}"))) (} "}")))) (} "}"))) (} "}")) (else_clause "else if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" (else "else") (if_statement "if (local_dc == local_d8) {\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }\n            else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" (if "if") (parenthesized_expression "(local_dc == local_d8)" (( "(") (binary_expression "local_dc == local_d8" (identifier "local_dc") (== "==") (identifier "local_d8")) () ")")) (compound_statement "{\n              *(uint *********)(puVar24 + -8) = &local_f0;\n              *(uint ********)(puVar24 + -0xc) = local_dc;\n              puVar25 = puVar24 + -0x10;\n              *(uint *********)(puVar24 + -0x10) = &local_e0;\n              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;\n              FUN_00047200();\n              pppppppuVar29 = extraout_ECX_21;\nLAB_000a3e57:\n              puVar24 = puVar25 + 0x10;\n            }" ({ "{") (expression_statement "*(uint *********)(puVar24 + -8) = &local_f0;" (assignment_expression "*(uint *********)(puVar24 + -8) = &local_f0" (pointer_expression "*(uint *********)(puVar24 + -8)" (* "*") (cast_expression "(uint *********)(puVar24 + -8)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar24 + -8)" (( "(") (binary_expression "puVar24 + -8" (identifier "puVar24") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_f0" (& "&") (identifier "local_f0"))) (; ";")) (expression_statement "*(uint ********)(puVar24 + -0xc) = local_dc;" (assignment_expression "*(uint ********)(puVar24 + -0xc) = local_dc" (pointer_expression "*(uint ********)(puVar24 + -0xc)" (* "*") (cast_expression "(uint ********)(puVar24 + -0xc)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0xc)" (( "(") (binary_expression "puVar24 + -0xc" (identifier "puVar24") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_dc")) (; ";")) (expression_statement "puVar25 = puVar24 + -0x10;" (assignment_expression "puVar25 = puVar24 + -0x10" (identifier "puVar25") (= "=") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10"))) (; ";")) (expression_statement "*(uint *********)(puVar24 + -0x10) = &local_e0;" (assignment_expression "*(uint *********)(puVar24 + -0x10) = &local_e0" (pointer_expression "*(uint *********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint *********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint *********" (type_identifier "uint") (abstract_pointer_declarator "*********" (* "*") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_e0" (& "&") (identifier "local_e0"))) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa3e57;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa3e57" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3e57")) (; ";")) (expression_statement "FUN_00047200();" (call_expression "FUN_00047200()" (identifier "FUN_00047200") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppuVar29 = extraout_ECX_21;" (assignment_expression "pppppppuVar29 = extraout_ECX_21" (identifier "pppppppuVar29") (= "=") (identifier "extraout_ECX_21")) (; ";")) (labeled_statement "LAB_000a3e57:\n              puVar24 = puVar25 + 0x10;" (statement_identifier "LAB_000a3e57") (: ":") (expression_statement "puVar24 = puVar25 + 0x10;" (assignment_expression "puVar24 = puVar25 + 0x10" (identifier "puVar24") (= "=") (binary_expression "puVar25 + 0x10" (identifier "puVar25") (+ "+") (number_literal "0x10"))) (; ";"))) (} "}")) (else_clause "else {\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" (else "else") (compound_statement "{\n              *local_dc = (uint ******)local_f0;\n              local_dc = local_dc + 1;\n            }" ({ "{") (expression_statement "*local_dc = (uint ******)local_f0;" (assignment_expression "*local_dc = (uint ******)local_f0" (pointer_expression "*local_dc" (* "*") (identifier "local_dc")) (= "=") (cast_expression "(uint ******)local_f0" (( "(") (type_descriptor "uint ******" (type_identifier "uint") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "local_f0"))) (; ";")) (expression_statement "local_dc = local_dc + 1;" (assignment_expression "local_dc = local_dc + 1" (identifier "local_dc") (= "=") (binary_expression "local_dc + 1" (identifier "local_dc") (+ "+") (number_literal "1"))) (; ";")) (} "}")))))) (} "}")))) (labeled_statement "LAB_000a23a1:\n          pppppppuVar27 = (uint *******)((int)local_f0 + 1);" (statement_identifier "LAB_000a23a1") (: ":") (expression_statement "pppppppuVar27 = (uint *******)((int)local_f0 + 1);" (assignment_expression "pppppppuVar27 = (uint *******)((int)local_f0 + 1)" (identifier "pppppppuVar27") (= "=") (cast_expression "(uint *******)((int)local_f0 + 1)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)local_f0 + 1)" (( "(") (binary_expression "(int)local_f0 + 1" (cast_expression "(int)local_f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_f0")) (+ "+") (number_literal "1")) () ")")))) (; ";"))) (expression_statement "pppppppuVar28 = local_134 + 0x10;" (assignment_expression "pppppppuVar28 = local_134 + 0x10" (identifier "pppppppuVar28") (= "=") (binary_expression "local_134 + 0x10" (identifier "local_134") (+ "+") (number_literal "0x10"))) (; ";")) (expression_statement "local_f0 = pppppppuVar27;" (assignment_expression "local_f0 = pppppppuVar27" (identifier "local_f0") (= "=") (identifier "pppppppuVar27")) (; ";")) (if_statement "if (local_130 <= pppppppuVar27) goto LAB_000a2740;" (if "if") (parenthesized_expression "(local_130 <= pppppppuVar27)" (( "(") (binary_expression "local_130 <= pppppppuVar27" (identifier "local_130") (<= "<=") (identifier "pppppppuVar27")) () ")")) (goto_statement "goto LAB_000a2740;" (goto "goto") (statement_identifier "LAB_000a2740") (; ";"))) (expression_statement "local_ec = pppppppuVar28;" (assignment_expression "local_ec = pppppppuVar28" (identifier "local_ec") (= "=") (identifier "pppppppuVar28")) (; ";")) (expression_statement "ppppppuVar21 = *pppppppuVar28;" (assignment_expression "ppppppuVar21 = *pppppppuVar28" (identifier "ppppppuVar21") (= "=") (pointer_expression "*pppppppuVar28" (* "*") (identifier "pppppppuVar28"))) (; ";")) (expression_statement "local_124 = (uint *******)local_134[0x11];" (assignment_expression "local_124 = (uint *******)local_134[0x11]" (identifier "local_124") (= "=") (cast_expression "(uint *******)local_134[0x11]" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_134[0x11]" (identifier "local_134") ([ "[") (number_literal "0x11") (] "]")))) (; ";")) (expression_statement "puVar26 = puVar24;" (assignment_expression "puVar26 = puVar24" (identifier "puVar26") (= "=") (identifier "puVar24")) (; ";")) (expression_statement "local_134 = pppppppuVar28;" (assignment_expression "local_134 = pppppppuVar28" (identifier "local_134") (= "=") (identifier "pppppppuVar28")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(ppppppuVar21 < local_148)" (( "(") (binary_expression "ppppppuVar21 < local_148" (identifier "ppppppuVar21") (< "<") (identifier "local_148")) () ")")) (; ";")) (} "}"))) (expression_statement "pppppppuVar22 = local_f0;" (assignment_expression "pppppppuVar22 = local_f0" (identifier "pppppppuVar22") (= "=") (identifier "local_f0")) (; ";")) (expression_statement "local_ec = local_134;" (assignment_expression "local_ec = local_134" (identifier "local_ec") (= "=") (identifier "local_134")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = local_120 + -0x37485" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_120 + -0x37485" (identifier "local_120") (+ "+") (number_literal "-0x37485"))) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3657;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3657" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3657")) (; ";")) (expression_statement "uVar12 = gettext();" (assignment_expression "uVar12 = gettext()" (identifier "uVar12") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(uint *******)(puVar26 + -4) = ppppppuVar21;" (assignment_expression "*(uint *******)(puVar26 + -4) = ppppppuVar21" (pointer_expression "*(uint *******)(puVar26 + -4)" (* "*") (cast_expression "(uint *******)(puVar26 + -4)" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(puVar26 + -4)" (( "(") (binary_expression "puVar26 + -4" (identifier "puVar26") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "ppppppuVar21")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -8) = pppppppuVar22;" (assignment_expression "*(uint ********)(puVar26 + -8) = pppppppuVar22" (pointer_expression "*(uint ********)(puVar26 + -8)" (* "*") (cast_expression "(uint ********)(puVar26 + -8)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -8)" (( "(") (binary_expression "puVar26 + -8" (identifier "puVar26") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "pppppppuVar22")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0xc) = uVar12;" (assignment_expression "*(undefined4 *)(puVar26 + -0xc) = uVar12" (pointer_expression "*(undefined4 *)(puVar26 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0xc)" (( "(") (binary_expression "puVar26 + -0xc" (identifier "puVar26") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(uint ********)(puVar26 + -0x10) = param_1;" (assignment_expression "*(uint ********)(puVar26 + -0x10) = param_1" (pointer_expression "*(uint ********)(puVar26 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar26 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar26 + -0x10)" (( "(") (binary_expression "puVar26 + -0x10" (identifier "puVar26") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar26 + -0x14) = 0xa3665;" (assignment_expression "*(undefined4 *)(puVar26 + -0x14) = 0xa3665" (pointer_expression "*(undefined4 *)(puVar26 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar26 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar26 + -0x14)" (( "(") (binary_expression "puVar26 + -0x14" (identifier "puVar26") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa3665")) (; ";")) (expression_statement "FUN_00091980();" (call_expression "FUN_00091980()" (identifier "FUN_00091980") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar24 = puVar26;" (assignment_expression "puVar24 = puVar26" (identifier "puVar24") (= "=") (identifier "puVar26")) (; ";")) (} "}")))) (if_statement "if (local_bc != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }" (if "if") (parenthesized_expression "(local_bc != (int *)0x0)" (( "(") (binary_expression "local_bc != (int *)0x0" (identifier "local_bc") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *(int **)(puVar24 + -0x10) = local_bc;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;\n      FUN_001807a0();\n    }" ({ "{") (expression_statement "*(int **)(puVar24 + -0x10) = local_bc;" (assignment_expression "*(int **)(puVar24 + -0x10) = local_bc" (pointer_expression "*(int **)(puVar24 + -0x10)" (* "*") (cast_expression "(int **)(puVar24 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_bc")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa28af;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa28af" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa28af")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_c8 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }" (if "if") (parenthesized_expression "(local_c8 != (int *)0x0)" (( "(") (binary_expression "local_c8 != (int *)0x0" (identifier "local_c8") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *(int **)(puVar24 + -0x10) = local_c8;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;\n      FUN_001807a0();\n    }" ({ "{") (expression_statement "*(int **)(puVar24 + -0x10) = local_c8;" (assignment_expression "*(int **)(puVar24 + -0x10) = local_c8" (pointer_expression "*(int **)(puVar24 + -0x10)" (* "*") (cast_expression "(int **)(puVar24 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_c8")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa28cb;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa28cb" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa28cb")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_d4 != (int *)0x0) {\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }" (if "if") (parenthesized_expression "(local_d4 != (int *)0x0)" (( "(") (binary_expression "local_d4 != (int *)0x0" (identifier "local_d4") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *(int **)(puVar24 + -0x10) = local_d4;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;\n      FUN_001807a0();\n    }" ({ "{") (expression_statement "*(int **)(puVar24 + -0x10) = local_d4;" (assignment_expression "*(int **)(puVar24 + -0x10) = local_d4" (pointer_expression "*(int **)(puVar24 + -0x10)" (* "*") (cast_expression "(int **)(puVar24 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_d4")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa28e7;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa28e7" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa28e7")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_e0 != (uint *******)0x0) {\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }" (if "if") (parenthesized_expression "(local_e0 != (uint *******)0x0)" (( "(") (binary_expression "local_e0 != (uint *******)0x0" (identifier "local_e0") (!= "!=") (cast_expression "(uint *******)0x0" (( "(") (type_descriptor "uint *******" (type_identifier "uint") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *(uint ********)(puVar24 + -0x10) = local_e0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;\n      FUN_001807a0();\n    }" ({ "{") (expression_statement "*(uint ********)(puVar24 + -0x10) = local_e0;" (assignment_expression "*(uint ********)(puVar24 + -0x10) = local_e0" (pointer_expression "*(uint ********)(puVar24 + -0x10)" (* "*") (cast_expression "(uint ********)(puVar24 + -0x10)" (( "(") (type_descriptor "uint ********" (type_identifier "uint") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_e0")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2903;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2903" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2903")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_b0 != (void *)0x0) {\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }" (if "if") (parenthesized_expression "(local_b0 != (void *)0x0)" (( "(") (binary_expression "local_b0 != (void *)0x0" (identifier "local_b0") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *(void **)(puVar24 + -0x10) = local_b0;\n      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;\n      FUN_001807a0();\n    }" ({ "{") (expression_statement "*(void **)(puVar24 + -0x10) = local_b0;" (assignment_expression "*(void **)(puVar24 + -0x10) = local_b0" (pointer_expression "*(void **)(puVar24 + -0x10)" (* "*") (cast_expression "(void **)(puVar24 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_b0")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa291f;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa291f" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa291f")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }" (else "else") (compound_statement "{\n    puVar24 = auStack_1ac;\n    if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }\n  }" ({ "{") (expression_statement "puVar24 = auStack_1ac;" (assignment_expression "puVar24 = auStack_1ac" (identifier "puVar24") (= "=") (identifier "auStack_1ac")) (; ";")) (if_statement "if (local_135 == '\0') {\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }" (if "if") (parenthesized_expression "(local_135 == '\0')" (( "(") (binary_expression "local_135 == '\0'" (identifier "local_135") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      iVar19 = *param_4;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      iVar19 = param_4[1];\n      *param_4 = 0;\n      if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }\n      param_4[1] = 0;\n      puVar24 = auStack_1ac;\n    }" ({ "{") (expression_statement "iVar19 = *param_4;" (assignment_expression "iVar19 = *param_4" (identifier "iVar19") (= "=") (pointer_expression "*param_4" (* "*") (identifier "param_4"))) (; ";")) (if_statement "if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" ({ "{") (expression_statement "FUN_0005cea0(iVar19);" (call_expression "FUN_0005cea0(iVar19)" (identifier "FUN_0005cea0") (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "FUN_00180780(iVar19,0xc);" (call_expression "FUN_00180780(iVar19,0xc)" (identifier "FUN_00180780") (argument_list "(iVar19,0xc)" (( "(") (identifier "iVar19") (, ",") (number_literal "0xc") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar19 = param_4[1];" (assignment_expression "iVar19 = param_4[1]" (identifier "iVar19") (= "=") (subscript_expression "param_4[1]" (identifier "param_4") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "*param_4 = 0;" (assignment_expression "*param_4 = 0" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (= "=") (number_literal "0")) (; ";")) (if_statement "if (iVar19 != 0) {\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_0005cea0(iVar19);\n        FUN_00180780(iVar19,0xc);\n      }" ({ "{") (expression_statement "FUN_0005cea0(iVar19);" (call_expression "FUN_0005cea0(iVar19)" (identifier "FUN_0005cea0") (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "FUN_00180780(iVar19,0xc);" (call_expression "FUN_00180780(iVar19,0xc)" (identifier "FUN_00180780") (argument_list "(iVar19,0xc)" (( "(") (identifier "iVar19") (, ",") (number_literal "0xc") () ")"))) (; ";")) (} "}"))) (expression_statement "param_4[1] = 0;" (assignment_expression "param_4[1] = 0" (subscript_expression "param_4[1]" (identifier "param_4") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar24 = auStack_1ac;" (assignment_expression "puVar24 = auStack_1ac" (identifier "puVar24") (= "=") (identifier "auStack_1ac")) (; ";")) (} "}"))) (} "}")))) (expression_statement "*(undefined4 **)(puVar24 + -0x10) = local_15c;" (assignment_expression "*(undefined4 **)(puVar24 + -0x10) = local_15c" (pointer_expression "*(undefined4 **)(puVar24 + -0x10)" (* "*") (cast_expression "(undefined4 **)(puVar24 + -0x10)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_15c")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2938;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2938" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2938")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 **)(puVar24 + -0x10) = local_158;" (assignment_expression "*(undefined4 **)(puVar24 + -0x10) = local_158" (pointer_expression "*(undefined4 **)(puVar24 + -0x10)" (* "*") (cast_expression "(undefined4 **)(puVar24 + -0x10)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar24 + -0x10)" (( "(") (binary_expression "puVar24 + -0x10" (identifier "puVar24") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_158")) (; ";")) (expression_statement "*(undefined4 *)(puVar24 + -0x14) = 0xa2944;" (assignment_expression "*(undefined4 *)(puVar24 + -0x14) = 0xa2944" (pointer_expression "*(undefined4 *)(puVar24 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar24 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + -0x14)" (( "(") (binary_expression "puVar24 + -0x14" (identifier "puVar24") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xa2944")) (; ";")) (expression_statement "FUN_001807a0();" (call_expression "FUN_001807a0()" (identifier "FUN_001807a0") (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */
/* WARNING: Type propagation algorithm not settling */
/* WARNING: Enum "DT": Some values do not have unique names */
/* DWARF original prototype: void do_layout(Sized_relobj_file<64,_false> * this, Symbol_table *
   symtab, Layout * layout, Read_symbols_data * sd) */

void __thiscall
gold::Sized_relobj_file<64,_false>::do_layout
          (Sized_relobj_file<64,_false> *this,Symbol_table *symtab,Layout *layout,
          Read_symbols_data *sd)

{
  _Rb_tree_header *p_Var1;
  _Base_ptr *pp_Var2;
  byte bVar3;
  bool bVar4;
  Sized_relobj_file<64,_false> *pSVar5;
  uint uVar6;
  Plugin_manager *pPVar7;
  Elf_Word EVar8;
  Input_file *this_00;
  iterator __position;
  pointer pDVar9;
  Compressed_section_map *pCVar10;
  undefined4 uVar11;
  int iVar12;
  Garbage_collection *pGVar13;
  int *piVar14;
  pointer puVar15;
  pointer pDVar16;
  pointer ppOVar17;
  pointer puVar18;
  uint *puVar19;
  File_view *pFVar20;
  code *pcVar21;
  pointer pcVar22;
  uint3 uVar23;
  bool bVar24;
  bool bVar25;
  bool bVar26;
  Parameters *pPVar27;
  char *pcVar28;
  bool bVar29;
  difference_type __d;
  undefined4 *puVar30;
  undefined4 *puVar31;
  undefined4 *puVar32;
  size_t sVar33;
  General_options *pGVar34;
  _Base_ptr p_Var35;
  _func_int_varargs *p_Var36;
  __node_base *p_Var37;
  _func_int_varargs **pp_Var38;
  undefined4 uVar39;
  pointer pDVar40;
  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
  *paVar41;
  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
  *paVar42;
  Relocatable_relocs *pRVar43;
  Output_section *pOVar44;
  uchar *puVar45;
  vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *pvVar46;
  pointer ppRVar47;
  byte bVar48;
  Shdr SVar49;
  Sized_relobj_file<64,_false> *extraout_ECX;
  int iVar50;
  Sized_relobj_file<64,_false> *pSVar51;
  Sized_relobj_file<64,_false> *extraout_ECX_00;
  _Base_ptr p_Var52;
  _Base_ptr p_Var53;
  Sized_relobj_file<64,_false> *extraout_ECX_01;
  Sized_relobj_file<64,_false> *extraout_ECX_02;
  Sized_relobj_file<64,_false> *extraout_ECX_03;
  Sized_relobj_file<64,_false> *extraout_ECX_04;
  Sized_relobj_file<64,_false> *extraout_ECX_05;
  Sized_relobj_file<64,_false> *extraout_ECX_06;
  Sized_relobj_file<64,_false> *extraout_ECX_07;
  Sized_relobj_file<64,_false> *extraout_ECX_08;
  Sized_relobj_file<64,_false> *extraout_ECX_09;
  Sized_relobj_file<64,_false> *extraout_ECX_10;
  Sized_relobj_file<64,_false> *extraout_ECX_11;
  Sized_relobj_file<64,_false> *extraout_ECX_12;
  Sized_relobj_file<64,_false> *extraout_ECX_13;
  Sized_relobj_file<64,_false> *extraout_ECX_14;
  Sized_relobj_file<64,_false> *extraout_ECX_15;
  Sized_relobj_file<64,_false> *extraout_ECX_16;
  Sized_relobj_file<64,_false> *extraout_ECX_17;
  Sized_relobj_file<64,_false> *extraout_ECX_18;
  Sized_relobj_file<64,_false> *extraout_ECX_19;
  Sized_relobj_file<64,_false> *extraout_ECX_20;
  Sized_relobj_file<64,_false> *extraout_ECX_21;
  Sized_relobj_file<64,_false> *extraout_ECX_22;
  Sized_relobj_file<64,_false> *extraout_ECX_23;
  Sized_relobj_file<64,_false> *extraout_ECX_24;
  Sized_relobj_file<64,_false> *extraout_ECX_25;
  Sized_relobj_file<64,_false> *extraout_ECX_26;
  Sized_relobj_file<64,_false> *extraout_ECX_27;
  Sized_relobj_file<64,_false> *extraout_ECX_28;
  Sized_relobj_file<64,_false> *extraout_ECX_29;
  Sized_relobj_file<64,_false> *extraout_ECX_30;
  Sized_relobj_file<64,_false> *extraout_ECX_31;
  pointer ppOVar54;
  pointer pDVar55;
  uchar *puVar56;
  undefined **ppuVar57;
  pointer puVar58;
  undefined1 *puVar59;
  undefined4 *puVar60;
  int *piVar61;
  int *piVar62;
  uint uVar63;
  Incremental_inputs *pIVar64;
  byte *pbVar65;
  _Base_ptr p_Var66;
  Shdr_data<64> *pSVar67;
  pointer ppRVar68;
  uint uVar69;
  byte *pbVar70;
  byte *pbVar71;
  byte *pbVar72;
  _Base_ptr p_Var73;
  pointer pDVar74;
  bool bVar75;
  bool bVar76;
  byte bVar77;
  undefined1 auStack_1f0 [52];
  Symbols_data *in_stack_fffffe48;
  Object *in_stack_fffffe54;
  Symbols_data *local_190;
  section_size_type local_188;
  File_view *local_180;
  section_size_type local_17c;
  _Base_ptr local_174;
  uint local_170;
  uint local_16c;
  uint local_168;
  File_view *local_164;
  uchar *local_160;
  undefined4 local_154;
  undefined4 local_150;
  uint local_148;
  uchar *local_144;
  uint local_140;
  bool local_137;
  Shdr_data<64> *local_134;
  uint *local_12c;
  Sized_relobj_file<64,_false> *local_124;
  undefined **local_120;
  int *local_11c;
  undefined4 local_118;
  int local_110;
  char local_10c [4];
  undefined4 local_108;
  _Base_ptr local_100 [3];
  undefined1 local_f1;
  uint i;
  Shdr shdr;
  off_t *local_e8;
  _Base_ptr local_e4;
  vector<unsigned_int,_std::allocator<unsigned_int>_> reloc_sections;
  vector<unsigned_int,_std::allocator<unsigned_int>_> eh_frame_sections;
  vector<unsigned_int,_std::allocator<unsigned_int>_> debug_info_sections;
  vector<unsigned_int,_std::allocator<unsigned_int>_> debug_types_sections;
  vector<bool,_std::allocator<bool>_> omit;
  Shdr shdr_2;
  undefined1 local_94 [16];
  off_t offset;
  undefined4 local_6c;
  undefined4 local_68;
  undefined4 local_64;
  Input_file *local_60;
  Sized_relobj_file<64,_false> *local_5c;
  undefined4 local_58;
  uint local_54;
  undefined4 local_50;
  Xindex *local_4c;
  Compressed_section_map *local_48;
  pointer local_44;
  pointer local_40;
  pointer local_3c;
  vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *local_38;
  Object_merge_map *local_34;
  undefined4 local_30;
  Read_relocs_data *local_2c;
  Symbols_data *local_28;
  uint *local_24;
  
  bVar77 = 0;
  if (parameters->target_ == (Target *)0x0) {
                    /* WARNING: Subroutine does not return */
    do_gold_unreachable("../../gold/parameters.h",0x69,"target");
  }
  pGVar34 = parameters->options_;
  pSVar5 = *(Sized_relobj_file<64,_false> **)(*(int *)(parameters->target_ + 4) + 0x60);
  uVar6 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;
  if (pGVar34 == (General_options *)0x0) goto LAB_000a34ee;
  if ((pGVar34->gc_sections_).value == false) {
    if (pGVar34->icf_status_ == ICF_NONE) {
      if (layout->unique_segment_for_sections_specified_ == false) {
        if (uVar6 == 0) {
          return;
        }
        local_148 = sd->section_names_size;
        local_160 = sd->section_headers->data_;
        local_164 = sd->symbols;
        if (local_164 != (File_view *)0x0) {
          local_164 = (File_view *)local_164->data_;
        }
        local_17c = sd->symbols_size;
        local_180 = sd->symbol_names;
        if (local_180 != (File_view *)0x0) {
          local_180 = (File_view *)local_180->data_;
        }
        bVar25 = false;
        bVar24 = false;
        local_190 = (Symbols_data *)0x0;
        local_188 = sd->symbol_names_size;
        local_144 = sd->section_names->data_;
        bVar26 = false;
        goto LAB_000a1e71;
      }
      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;
      if (local_190 != (Symbols_data *)0x0) goto LAB_000a1e0a;
    }
    else {
      local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;
      if (local_190 != (Symbols_data *)0x0) goto LAB_000a33a4;
    }
LAB_000a3448:
    if (sd == (Read_symbols_data *)0x0) {
                    /* WARNING: Subroutine does not return */
      do_gold_unreachable("../../gold/object.cc",0x597,"do_layout");
    }
    if (uVar6 == 0) {
      return;
    }
    local_190 = (Symbols_data *)operator_new(0x20);
    in_stack_fffffe48 = local_190;
    Relobj::copy_symbols_data((Relobj *)this,local_190,sd,uVar6 << 6);
    local_160 = local_190->section_headers_data;
    (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = local_190;
    local_148 = local_190->section_names_size;
    local_164 = (File_view *)local_190->symbols_data;
    local_17c = local_190->symbols_size;
    local_180 = (File_view *)local_190->symbol_names_data;
    pGVar34 = parameters->options_;
    local_188 = local_190->symbol_names_size;
    local_144 = local_190->section_names_data;
    if (pGVar34 == (General_options *)0x0) {
LAB_000a34ee:
                    /* WARNING: Subroutine does not return */
      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");
    }
    bVar25 = true;
    bVar24 = false;
    bVar26 = true;
  }
  else {
    local_190 = (this->super_Sized_relobj<64,_false>).super_Relobj.sd_;
    if (local_190 == (Symbols_data *)0x0) goto LAB_000a3448;
    if (symtab->gc_->is_worklist_ready_ == false) {
                    /* WARNING: Subroutine does not return */
      do_gold_unreachable("../../gold/object.cc",0x59d,"do_layout");
    }
    if (pGVar34->icf_status_ != ICF_NONE) {
LAB_000a33a4:
      if (symtab->icf_->icf_ready_ == false) {
                    /* WARNING: Subroutine does not return */
        do_gold_unreachable("../../gold/object.cc",0x59f,"do_layout");
      }
    }
LAB_000a1e0a:
    if (uVar6 == 0) {
      return;
    }
    bVar25 = true;
    bVar24 = true;
    local_160 = local_190->section_headers_data;
    local_148 = local_190->section_names_size;
    bVar26 = false;
    local_164 = (File_view *)local_190->symbols_data;
    local_17c = local_190->symbols_size;
    local_180 = (File_view *)local_190->symbol_names_data;
    local_188 = local_190->symbol_names_size;
    local_144 = local_190->section_names_data;
  }
LAB_000a1e71:
  local_120 = &_GLOBAL_OFFSET_TABLE_;
  pPVar7 = pGVar34->plugins_;
  bVar3 = 0;
  if ((pPVar7 != (Plugin_manager *)0x0) && (bVar3 = pPVar7->any_claimed_, (bool)bVar3 != false)) {
    bVar3 = pPVar7->in_replacement_phase_ ^ 1;
  }
  if (0x3fffffff < uVar6) {
                    /* WARNING: Subroutine does not return */
    std::__throw_bad_alloc();
  }
  puVar30 = (undefined4 *)operator_new(uVar6 * 4);
  puVar32 = puVar30;
  if (uVar6 != 0) {
    do {
      *puVar32 = 0;
      puVar32 = puVar32 + 1;
    } while (puVar32 != puVar30 + uVar6);
  }
                    /* try { // try from 000a1efd to 000a1f01 has its CatchHandler @ 000a4675 */
  puVar31 = (undefined4 *)operator_new(uVar6 * 4);
  piVar62 = (int *)&stack0xfffffe54;
  puVar59 = &stack0xfffffe54;
  local_134 = (Shdr_data<64> *)(local_160 + 0x40);
  puVar32 = puVar31;
  if (uVar6 != 0) {
    do {
      *puVar32 = 0;
      puVar32 = puVar32 + 1;
    } while (puVar32 != puVar31 + uVar6);
    if (uVar6 != 1) {
      uVar69 = 1;
      local_140 = 0;
      pSVar67 = local_134;
      do {
        while( true ) {
          if (bVar3 != 0) {
            local_140 = (local_140 + 1) - (uint)((pSVar67->sh_flags & 2) == 0);
          }
          EVar8 = pSVar67->sh_type;
          if ((EVar8 == 9) || (EVar8 == 4)) break;
LAB_000a1f88:
          uVar69 = uVar69 + 1;
          pSVar67 = pSVar67 + 1;
          if (uVar69 == uVar6) goto LAB_000a2028;
        }
        uVar63 = pSVar67->sh_info;
        if (0xfeff < uVar63) {
                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */
          elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum(&this->elf_file_);
          uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;
        }
        if ((uVar63 == 0) || (uVar6 <= uVar63)) {
          in_stack_fffffe48 = (Symbols_data *)gettext("relocation section %u has bad info %u");
          Object::error((Object *)this,(char *)in_stack_fffffe48,uVar69,uVar63);
          goto LAB_000a1f88;
        }
        puVar19 = puVar30 + uVar63;
        if (*puVar19 == 0) {
          *puVar19 = uVar69;
          puVar31[uVar63] = EVar8;
          goto LAB_000a1f88;
        }
        *puVar19 = 0xffffffff;
        uVar69 = uVar69 + 1;
        pSVar67 = pSVar67 + 1;
      } while (uVar69 != uVar6);
      goto LAB_000a2028;
    }
  }
  local_140 = 0;
LAB_000a2028:
  if (!bVar24) {
    ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
               _M_impl._M_finish;
    ppOVar54 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
               super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
               _M_impl._M_start;
    uVar69 = (int)ppOVar17 - (int)ppOVar54 >> 2;
    if (uVar69 < uVar6) {
      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);
      std::vector<gold::Output_section*,_std::allocator<gold::Output_section*>_>::_M_default_append
                (&(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_,
                 (size_type)in_stack_fffffe48);
    }
    else if ((uVar6 < uVar69) && (ppOVar54 = ppOVar54 + uVar6, ppOVar17 != ppOVar54)) {
      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>._M_impl.
      _M_finish = ppOVar54;
    }
    puVar15 = (this->super_Sized_relobj<64,_false>).section_offsets_.
              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.
              _M_impl._M_finish;
    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>.
              _M_impl._M_start;
    uVar69 = (int)puVar15 - (int)puVar18 >> 3;
    if (uVar69 < uVar6) {
      in_stack_fffffe48 = (Symbols_data *)(uVar6 - uVar69);
                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */
      std::vector<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>::
      _M_default_append(&(this->super_Sized_relobj<64,_false>).section_offsets_,
                        (size_type)in_stack_fffffe48);
    }
    else if ((uVar6 < uVar69) && (puVar18 = puVar18 + uVar6, puVar15 != puVar18)) {
      (this->super_Sized_relobj<64,_false>).section_offsets_.
      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>._M_impl.
      _M_finish = puVar18;
    }
  }
  this_00 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.input_file_;
  if (this_00 == (Input_file *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */
    Object::input_file(in_stack_fffffe54);
  }
                    /* try { // try from 000a204d to 000a2051 has its CatchHandler @ 000a46c7 */
  local_137 = Input_file::just_symbols(this_00);
  if (local_137) {
    piVar62 = (int *)&stack0xfffffe54;
    if (!bVar24) {
      pFVar20 = sd->section_headers;
      if (pFVar20 != (File_view *)0x0) {
        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);
        in_stack_fffffe48 = (Symbols_data *)0xc;
        operator_delete(pFVar20,0xc);
      }
      pFVar20 = sd->section_names;
      sd->section_headers = (File_view *)0x0;
      if (pFVar20 != (File_view *)0x0) {
        File_view::~File_view(pFVar20,(int)in_stack_fffffe48);
        operator_delete(pFVar20,0xc);
      }
      sd->section_names = (File_view *)0x0;
      piVar62 = (int *)&stack0xfffffe54;
    }
  }
  else {
    if (local_140 != 0) {
      if (parameters->options_ == (General_options *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */
        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");
      }
      pPVar7 = parameters->options_->plugins_;
      shdr.p_ = (Shdr_data<64> *)this;
      __position._M_current =
           (pPVar7->deferred_layout_objects_).
           super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish;
      if (__position._M_current ==
          (pPVar7->deferred_layout_objects_).
          super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl.
          _M_end_of_storage) {
                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */
        std::vector<gold::Relobj*,_std::allocator<gold::Relobj*>_>::
        _M_realloc_insert<gold::Relobj*_const&>
                  (&pPVar7->deferred_layout_objects_,__position,(Relobj **)&shdr);
      }
      else {
        *__position._M_current = (Relobj *)this;
        (pPVar7->deferred_layout_objects_).
        super__Vector_base<gold::Relobj*,_std::allocator<gold::Relobj*>_>._M_impl._M_finish =
             __position._M_current + 1;
      }
      if (0x28f5c28 < local_140) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */
        std::__throw_length_error("vector::reserve");
      }
      pDVar9 = (this->deferred_layout_).
               super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
               ._M_impl._M_start;
      if ((uint)(((int)(this->deferred_layout_).
                       super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                       ._M_impl._M_end_of_storage - (int)pDVar9 >> 2) * -0x3d70a3d7) < local_140) {
        pDVar16 = (this->deferred_layout_).
                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                  ._M_impl._M_finish;
                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */
        pDVar40 = (pointer)operator_new(local_140 * 100);
        if (pDVar9 != pDVar16) {
          paVar42 = &(pDVar9->name_).field_2;
          pDVar55 = pDVar40;
          do {
            (pDVar55->name_)._M_dataplus._M_p = (pointer)&(pDVar55->name_).field_2;
            pcVar22 = (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p;
            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
                 *)pcVar22 == paVar42) {
              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;
              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 4) =
                   *(undefined4 *)((int)paVar42 + 4);
              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 8) =
                   *(undefined4 *)((int)paVar42 + 8);
              *(undefined4 *)((int)&(pDVar55->name_).field_2 + 0xc) =
                   *(undefined4 *)((int)paVar42 + 0xc);
            }
            else {
              (pDVar55->name_)._M_dataplus._M_p = pcVar22;
              (pDVar55->name_).field_2._M_allocated_capacity = paVar42->_M_allocated_capacity;
            }
            (pDVar55->name_)._M_string_length = *(size_type *)((int)paVar42 + -4);
            uVar69 = paVar42[1]._M_allocated_capacity;
            (((string *)((int)paVar42 + -8))->_M_dataplus)._M_p = (pointer)paVar42;
            paVar41 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
                       *)((int)paVar42 + 100);
            *(size_type *)((int)paVar42 + -4) = 0;
            paVar42->_M_local_buf[0] = '\0';
            pDVar55->shndx_ = uVar69;
            pDVar55->reloc_shndx_ = *(uint *)((int)paVar42 + 0x14);
            pDVar55->reloc_type_ = *(uint *)((int)paVar42 + 0x18);
            *(undefined4 *)pDVar55->shdr_data_ = *(undefined4 *)((int)paVar42 + 0x1c);
            *(size_type *)(pDVar55->shdr_data_ + 4) = paVar42[2]._M_allocated_capacity;
            *(undefined4 *)(pDVar55->shdr_data_ + 8) = *(undefined4 *)((int)paVar42 + 0x24);
            *(undefined4 *)(pDVar55->shdr_data_ + 0xc) = *(undefined4 *)((int)paVar42 + 0x28);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x10) = *(undefined4 *)((int)paVar42 + 0x2c);
            *(size_type *)(pDVar55->shdr_data_ + 0x14) = paVar42[3]._M_allocated_capacity;
            *(undefined4 *)(pDVar55->shdr_data_ + 0x18) = *(undefined4 *)((int)paVar42 + 0x34);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x1c) = *(undefined4 *)((int)paVar42 + 0x38);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x20) = *(undefined4 *)((int)paVar42 + 0x3c);
            *(size_type *)(pDVar55->shdr_data_ + 0x24) = paVar42[4]._M_allocated_capacity;
            *(undefined4 *)(pDVar55->shdr_data_ + 0x28) = *(undefined4 *)((int)paVar42 + 0x44);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x2c) = *(undefined4 *)((int)paVar42 + 0x48);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x30) = *(undefined4 *)((int)paVar42 + 0x4c);
            *(size_type *)(pDVar55->shdr_data_ + 0x34) = paVar42[5]._M_allocated_capacity;
            *(undefined4 *)(pDVar55->shdr_data_ + 0x38) = *(undefined4 *)((int)paVar42 + 0x54);
            *(undefined4 *)(pDVar55->shdr_data_ + 0x3c) = *(undefined4 *)((int)paVar42 + 0x58);
            paVar42 = paVar41;
            pDVar55 = pDVar55 + 1;
          } while (&pDVar9[(((uint)((int)pDVar16 + (-100 - (int)pDVar9)) >> 2) * 0x28f5c29 &
                           0x3fffffff) + 1].name_.field_2 != paVar41);
        }
        pDVar55 = (this->deferred_layout_).
                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                  ._M_impl._M_finish;
        pDVar74 = (this->deferred_layout_).
                  super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                  ._M_impl._M_start;
        if (pDVar55 != pDVar74) {
          do {
            pcVar22 = (pDVar74->name_)._M_dataplus._M_p;
            if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
                 *)pcVar22 != &(pDVar74->name_).field_2) {
              operator_delete(pcVar22);
            }
            pDVar74 = pDVar74 + 1;
          } while (pDVar55 != pDVar74);
          pDVar74 = (this->deferred_layout_).
                    super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                    ._M_impl._M_start;
        }
        if (pDVar74 != (pointer)0x0) {
          operator_delete(pDVar74);
        }
        (this->deferred_layout_).
        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
        ._M_impl._M_start = pDVar40;
        (this->deferred_layout_).
        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
        ._M_impl._M_finish = (pointer)(((int)pDVar16 - (int)pDVar9) + (int)pDVar40);
        (this->deferred_layout_).
        super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
        ._M_impl._M_end_of_storage = pDVar40 + local_140;
      }
      this->is_deferred_layout_ = true;
    }
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
    super__Bit_iterator_base._M_offset = 0;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.
    super__Bit_iterator_base._M_p = (_Bit_type *)0x0;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.
    super__Bit_iterator_base._M_offset = 0;
    uVar69 = uVar6 + 0x1f >> 5;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
    _M_end_of_storage = (_Bit_pointer)0x0;
    uVar63 = uVar69 * 4;
                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
    super__Bit_iterator_base._M_p = (_Bit_type *)operator_new(uVar63);
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
    _M_end_of_storage =
         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
         super__Bit_iterator_base._M_p + uVar69;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.
    super__Bit_iterator_base._M_offset = uVar6 & 0x1f;
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_finish.
    super__Bit_iterator_base._M_p =
         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
         super__Bit_iterator_base._M_p + ((int)uVar6 >> 5);
    omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
    super__Bit_iterator_base._M_offset = 0;
    memset(omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start
           .super__Bit_iterator_base._M_p,0,uVar63);
    pGVar34 = parameters->options_;
    if (pGVar34 == (General_options *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */
      do_gold_unreachable("../../gold/parameters.h",0x5c,"options");
    }
    bVar4 = (pGVar34->relocatable_).value;
    SVar49.p_ = (Shdr_data<64> *)(uint)bVar4;
    bVar3 = bVar4;
    if (bVar4 == false) {
      bVar3 = (pGVar34->emit_relocs_).value;
    }
    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start
         = (pointer)0x0;
    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish
         = (pointer)0x0;
    reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_end_of_storage = (pointer)0x0;
    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_start = (pointer)0x0;
    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_finish = (pointer)0x0;
    eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_end_of_storage = (pointer)0x0;
    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_start = (pointer)0x0;
    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_finish = (pointer)0x0;
    debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_end_of_storage = (pointer)0x0;
    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_start = (pointer)0x0;
    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_finish = (pointer)0x0;
    debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
    _M_end_of_storage = (pointer)0x0;
    i = 1;
    if (uVar6 < 2) {
      local_16c = 0;
      local_168 = 0;
LAB_000a2740:
      if (!bVar24) {
        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0xc) = this;
        *(Layout **)((int)piVar62 + -0x10) = layout;
        *(undefined4 *)((int)piVar62 + -0x14) = 0xa275f;
        Layout::merge_gnu_properties
                  (*(Layout **)((int)piVar62 + -0x10),*(Object **)((int)piVar62 + -0xc));
        *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) = this;
        *(uint *)((int)piVar62 + -0x14) = local_168;
        *(uint *)((int)piVar62 + -0x18) = local_16c;
        *(uint *)((int)piVar62 + -0x1c) = (uint)local_137;
        *(Layout **)((int)piVar62 + -0x20) = layout;
        *(undefined4 *)((int)piVar62 + -0x24) = 0xa277f;
        Layout::layout_gnu_stack
                  (*(Layout **)((int)piVar62 + -0x20),*(bool *)((int)piVar62 + -0x1c),
                   *(uint64_t *)((int)piVar62 + -0x18),*(Object **)((int)piVar62 + -0x10));
        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_02;
      }
      if (bVar26) {
        if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_finish !=
            eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_start) {
          *(uint *)((int)piVar62 + -4) = uVar63;
          *(char **)((int)piVar62 + -8) = "do_layout";
          *(undefined4 *)((int)piVar62 + -0xc) = 0x751;
          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa44e7;
          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),
                              *(char **)((int)piVar62 + -8));
        }
      }
      else if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_finish !=
               eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_start) {
        puVar58 = eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                  _M_impl._M_start;
        do {
          uVar69 = *puVar58;
          *(undefined4 *)((int)piVar62 + -0xc) = puVar31[uVar69];
          *(undefined4 *)((int)piVar62 + -0x10) = puVar30[uVar69];
          *(off_t **)((int)piVar62 + -0x14) = &offset;
          *(uint *)((int)piVar62 + -0x18) = uVar69;
          *(section_size_type *)((int)piVar62 + -0x1c) = local_188;
          *(File_view **)((int)piVar62 + -0x20) = local_180;
          *(section_size_type *)((int)piVar62 + -0x24) = local_17c;
          *(File_view **)((int)piVar62 + -0x28) = local_164;
          *(Layout **)((int)piVar62 + -0x2c) = layout;
          *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30) = this;
          offset._0_4_ = (Sized_relobj_file<64,_false> *)(local_160 + uVar69 * 0x40);
                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */
          *(undefined4 *)((int)piVar62 + -0x34) = 0xa374f;
          layout_eh_frame_section
                    (*(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x30),
                     *(Layout **)((int)piVar62 + -0x2c),*(uchar **)((int)piVar62 + -0x28),
                     *(section_size_type *)((int)piVar62 + -0x24),*(uchar **)((int)piVar62 + -0x20),
                     *(section_size_type *)((int)piVar62 + -0x1c),*(uint *)((int)piVar62 + -0x18),
                     *(Shdr **)((int)piVar62 + -0x14),*(uint *)((int)piVar62 + -0x10),
                     *(uint *)((int)piVar62 + -0xc));
          puVar58 = puVar58 + 1;
          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_13;
        } while (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                 _M_impl._M_finish != puVar58);
      }
      if (bVar3 != 0) {
        uVar69 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_;
        *(undefined4 *)((int)piVar62 + -0x10) = 0xc;
                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */
        *(undefined4 *)((int)piVar62 + -0x14) = 0xa41d3;
        pvVar46 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_> *)
                  operator_new(*(uint *)((int)piVar62 + -0x10));
        (pvVar46->
        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).
        _M_impl._M_start = (pointer)0x0;
        (pvVar46->
        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).
        _M_impl._M_finish = (pointer)0x0;
        (pvVar46->
        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).
        _M_impl._M_end_of_storage = (pointer)0x0;
        if (uVar69 == 0) {
          ppRVar68 = (pointer)0x0;
          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_27;
        }
        else {
          if (0x3fffffff < uVar69) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */
            *(undefined1 **)((int)piVar62 + -4) = &LAB_000a4530;
            std::__throw_bad_alloc();
          }
          *(uint *)((int)piVar62 + -0x10) = uVar69 * 4;
                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4212;
          ppRVar47 = (pointer)operator_new(*(uint *)((int)piVar62 + -0x10));
          ppRVar68 = ppRVar47 + uVar69;
          (pvVar46->
          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)
          ._M_impl._M_start = ppRVar47;
          (pvVar46->
          super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>)
          ._M_impl._M_end_of_storage = ppRVar68;
          do {
            *ppRVar47 = (Relocatable_relocs *)0x0;
            ppRVar47 = ppRVar47 + 1;
            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_28;
          } while (ppRVar68 != ppRVar47);
        }
        (pvVar46->
        super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>).
        _M_impl._M_finish = ppRVar68;
        (this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_ = pvVar46;
      }
      if (bVar25) {
        if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
            _M_start !=
            reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
            _M_finish) {
          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;
          *(char **)((int)piVar62 + -8) = "do_layout";
          *(undefined4 *)((int)piVar62 + -0xc) = 0x76c;
          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4525;
          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),
                              *(char **)((int)piVar62 + -8));
        }
      }
      else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_start !=
               reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_finish) {
        local_12c = reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                    _M_impl._M_start;
        do {
          uVar69 = *local_12c;
          pSVar67 = (Shdr_data<64> *)(local_160 + uVar69 * 0x40);
          uVar63 = pSVar67->sh_info;
          shdr_2.p_ = pSVar67;
          if (0xfeff < uVar63) {
            *(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10) = &this->elf_file_;
            *(undefined4 *)((int)piVar62 + -0x14) = 0xa3ae3;
            elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum
                      (*(Elf_file<64,_false,_gold::Object> **)((int)piVar62 + -0x10));
            uVar63 = uVar63 + (this->elf_file_).large_shndx_offset_;
            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_17;
          }
          if (uVar63 < uVar6) {
            ppOVar17 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                       super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                       ._M_impl._M_start;
            pOVar44 = ppOVar17[uVar63];
            if (pOVar44 == (Output_section *)0x2) {
              if (!bVar24) {
                puVar56 = local_144 + (shdr_2.p_)->sh_name;
                pSVar5 = (Sized_relobj_file<64,_false> *)(shdr_2.p_)->sh_type;
                offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;
                puVar45 = (uchar *)0xffffffff;
                if (puVar56 != (uchar *)0x0) {
                  *(uchar **)((int)piVar62 + -0x10) = puVar56;
                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b4f;
                  sVar33 = strlen(*(char **)((int)piVar62 + -0x10));
                  puVar45 = puVar56 + sVar33;
                }
                *(undefined4 *)((int)piVar62 + -4) = 0;
                *(uchar **)((int)piVar62 + -8) = puVar45;
                *(uchar **)((int)piVar62 + -0xc) = puVar56;
                *(off_t **)((int)piVar62 + -0x10) = &offset;
                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3b67;
                std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
                _M_construct<char_const*>();
                local_6c = uVar69;
                local_68 = 0;
                local_64 = 0;
                local_60 = (Input_file *)pSVar67->sh_name;
                local_58 = (int)pSVar67->sh_flags;
                local_54 = *(uint *)((int)&pSVar67->sh_flags + 4);
                local_50 = *(undefined4 *)&pSVar67->sh_addr;
                local_4c = *(Xindex **)((int)&pSVar67->sh_addr + 4);
                local_48 = *(Compressed_section_map **)&pSVar67->sh_offset;
                local_44 = *(pointer *)((int)&pSVar67->sh_offset + 4);
                local_40 = *(pointer *)&pSVar67->sh_size;
                local_3c = *(pointer *)((int)&pSVar67->sh_size + 4);
                local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>
                            *)pSVar67->sh_link;
                local_34 = (Object_merge_map *)pSVar67->sh_info;
                local_30 = *(undefined4 *)&pSVar67->sh_addralign;
                local_2c = *(Read_relocs_data **)((int)&pSVar67->sh_addralign + 4);
                local_28 = *(Symbols_data **)&pSVar67->sh_entsize;
                puVar19 = *(uint **)((int)&pSVar67->sh_entsize + 4);
                *(off_t **)((int)piVar62 + -0xc) = &offset;
                *(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                  **)((int)piVar62 + -0x10) = &this->deferred_layout_relocs_;
                local_24 = puVar19;
                local_5c = pSVar5;
                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */
                *(undefined4 *)((int)piVar62 + -0x14) = 0xa3bee;
                std::
                vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>
                          (*(vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                             **)((int)piVar62 + -0x10),*(Deferred_layout **)((int)piVar62 + -0xc));
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_18;
                if ((Sized_relobj_file<64,_false> *)offset !=
                    (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                  *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x10) =
                       (Sized_relobj_file<64,_false> *)offset;
                  *(undefined4 *)((int)piVar62 + -0x14) = 0xa3c0b;
                  operator_delete(*(void **)((int)piVar62 + -0x10));
                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_19;
                }
                (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
                _M_impl._M_start[uVar69] = (Output_section *)0x2;
                puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                          super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                          ._M_impl._M_start;
                *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;
                *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;
              }
            }
            else if (pOVar44 == (Output_section *)0x0) {
              ppOVar17[uVar69] = (Output_section *)0x0;
              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                        ._M_impl._M_start;
              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;
              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;
            }
            else {
              *(undefined4 *)((int)piVar62 + -0x10) = 0x14;
                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */
              *(undefined4 *)((int)piVar62 + -0x14) = 0xa3a12;
              pRVar43 = (Relocatable_relocs *)operator_new(*(uint *)((int)piVar62 + -0x10));
              (pRVar43->reloc_strategies_).
              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_start =
                   (pointer)0x0;
              (pRVar43->reloc_strategies_).
              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl._M_finish =
                   (pointer)0x0;
              (pRVar43->reloc_strategies_).
              super__Vector_base<unsigned_char,_std::allocator<unsigned_char>_>._M_impl.
              _M_end_of_storage = (pointer)0x0;
              pRVar43->output_reloc_count_ = 0;
              pRVar43->posd_ = (Output_data *)0x0;
              if ((this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.shnum_ <= uVar69)
              {
                *(undefined ***)((int)piVar62 + -4) = &_GLOBAL_OFFSET_TABLE_;
                *(char **)((int)piVar62 + -8) = "set_relocatable_relocs";
                *(undefined4 *)((int)piVar62 + -0xc) = 0x541;
                *(char **)((int)piVar62 + -0x10) = "../../gold/object.h";
                    /* WARNING: Subroutine does not return */
                *(undefined4 *)((int)piVar62 + -0x14) = 0xa44c8;
                do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),
                                    *(char **)((int)piVar62 + -8));
              }
              (((this->super_Sized_relobj<64,_false>).super_Relobj.map_to_relocatable_relocs_)->
              super__Vector_base<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>
              )._M_impl._M_start[uVar69] = pRVar43;
              *(Relocatable_relocs **)((int)piVar62 + -0xc) = pRVar43;
              *(Output_section **)((int)piVar62 + -0x10) = pOVar44;
              *(Shdr **)((int)piVar62 + -0x14) = &shdr_2;
              *(uint *)((int)piVar62 + -0x18) = uVar69;
              *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c) = this;
              *(Layout **)((int)piVar62 + -0x20) = layout;
              *(undefined4 *)((int)piVar62 + -0x24) = 0xa3a70;
              pOVar44 = Layout::layout_reloc<64,_false>
                                  (*(Layout **)((int)piVar62 + -0x20),
                                   *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x1c),
                                   *(uint *)((int)piVar62 + -0x18),
                                   *(Shdr<64,_false> **)((int)piVar62 + -0x14),
                                   *(Output_section **)((int)piVar62 + -0x10),
                                   *(Relocatable_relocs **)((int)piVar62 + -0xc));
              (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
              super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
              _M_impl._M_start[uVar69] = pOVar44;
              puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                        super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                        ._M_impl._M_start;
              *(undefined4 *)(puVar18 + uVar69) = 0xffffffff;
              *(undefined4 *)((int)puVar18 + uVar69 * 8 + 4) = 0xffffffff;
              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_16;
            }
          }
          local_12c = local_12c + 1;
        } while (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                 _M_impl._M_finish != local_12c);
      }
      if (bVar26) {
        if ((debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
             _M_impl._M_start !=
             debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
             _M_impl._M_finish) ||
           (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_finish !=
            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_start)) {
          *(Shdr_data<64> **)((int)piVar62 + -4) = SVar49.p_;
          *(char **)((int)piVar62 + -8) = "do_layout";
          *(undefined4 *)((int)piVar62 + -0xc) = 0x7a0;
          *(char **)((int)piVar62 + -0x10) = "../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa4506;
          do_gold_unreachable(*(char **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc),
                              *(char **)((int)piVar62 + -8));
        }
      }
      else {
        puVar58 = debug_info_sections.
                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;
        if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_start !=
            debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_finish) {
          do {
            uVar6 = *puVar58;
            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];
            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];
            *(uint *)((int)piVar62 + -0x18) = uVar6;
            *(undefined4 *)((int)piVar62 + -0x1c) = 0;
            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;
            *(File_view **)((int)piVar62 + -0x24) = local_164;
            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;
            *(undefined4 *)((int)piVar62 + -0x2c) = 0;
            *(Layout **)((int)piVar62 + -0x30) = layout;
                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */
            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3cc5;
            Layout::add_to_gdb_index<64,_false>
                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),
                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),
                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),
                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),
                       *(uint *)((int)piVar62 + -0x10));
            puVar58 = puVar58 + 1;
          } while (debug_info_sections.
                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish
                   != puVar58);
        }
        puVar58 = debug_types_sections.
                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_start;
        if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_finish !=
            debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
            _M_impl._M_start) {
          do {
            uVar6 = *puVar58;
            *(undefined4 *)((int)piVar62 + -0x10) = puVar31[uVar6];
            *(undefined4 *)((int)piVar62 + -0x14) = puVar30[uVar6];
            *(uint *)((int)piVar62 + -0x18) = uVar6;
            *(undefined4 *)((int)piVar62 + -0x1c) = 0;
            *(section_size_type *)((int)piVar62 + -0x20) = local_17c;
            *(File_view **)((int)piVar62 + -0x24) = local_164;
            *(Sized_relobj_file<64,_false> **)((int)piVar62 + -0x28) = this;
            *(undefined4 *)((int)piVar62 + -0x2c) = 1;
            *(Layout **)((int)piVar62 + -0x30) = layout;
            *(undefined4 *)((int)piVar62 + -0x34) = 0xa3d3d;
            Layout::add_to_gdb_index<64,_false>
                      (*(Layout **)((int)piVar62 + -0x30),*(bool *)((int)piVar62 + -0x2c),
                       *(Sized_relobj<64,_false> **)((int)piVar62 + -0x28),
                       *(uchar **)((int)piVar62 + -0x24),*(off_t *)((int)piVar62 + -0x20),
                       *(uint *)((int)piVar62 + -0x18),*(uint *)((int)piVar62 + -0x14),
                       *(uint *)((int)piVar62 + -0x10));
            puVar58 = puVar58 + 1;
          } while (debug_types_sections.
                   super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl._M_finish
                   != puVar58);
        }
      }
      if (bVar24) {
        if (local_190->section_headers_data != (uchar *)0x0) {
          *(uchar **)((int)piVar62 + -0x10) = local_190->section_headers_data;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa282c;
          operator_delete__(*(void **)((int)piVar62 + -0x10));
        }
        if (local_190->section_names_data != (uchar *)0x0) {
          *(uchar **)((int)piVar62 + -0x10) = local_190->section_names_data;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa284b;
          operator_delete__(*(void **)((int)piVar62 + -0x10));
        }
        if (local_190->symbols_data != (uchar *)0x0) {
          *(uchar **)((int)piVar62 + -0x10) = local_190->symbols_data;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa286a;
          operator_delete__(*(void **)((int)piVar62 + -0x10));
        }
        if (local_190->symbol_names_data != (uchar *)0x0) {
          *(uchar **)((int)piVar62 + -0x10) = local_190->symbol_names_data;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa2889;
          operator_delete__(*(void **)((int)piVar62 + -0x10));
        }
        (this->super_Sized_relobj<64,_false>).super_Relobj.sd_ = (Symbols_data *)0x0;
      }
      else {
        pFVar20 = sd->section_headers;
        if (pFVar20 != (File_view *)0x0) {
          *(File_view **)((int)piVar62 + -0x10) = pFVar20;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d72;
          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))
          ;
          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;
          *(File_view **)((int)piVar62 + -0x10) = pFVar20;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3d7c;
          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));
        }
        pFVar20 = sd->section_names;
        sd->section_headers = (File_view *)0x0;
        if (pFVar20 != (File_view *)0x0) {
          *(File_view **)((int)piVar62 + -0x10) = pFVar20;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3da0;
          File_view::~File_view(*(File_view **)((int)piVar62 + -0x10),*(int *)((int)piVar62 + -0xc))
          ;
          *(undefined4 *)((int)piVar62 + -0xc) = 0xc;
          *(File_view **)((int)piVar62 + -0x10) = pFVar20;
          *(undefined4 *)((int)piVar62 + -0x14) = 0xa3daa;
          operator_delete(*(void **)((int)piVar62 + -0x10),*(uint *)((int)piVar62 + -0xc));
        }
        sd->section_names = (File_view *)0x0;
      }
    }
    else {
      shdr.p_ = local_134;
      uVar69 = *(uint *)(local_160 + 0x40);
      local_124 = *(Sized_relobj_file<64,_false> **)(local_160 + 0x44);
      if (uVar69 < local_148) {
        local_16c = 0;
        local_168 = 0;
        ppuVar57 = local_120;
        piVar62 = (int *)&stack0xfffffe54;
        do {
          pbVar70 = local_144 + uVar69;
          shdr.p_ = local_134;
          if (bVar24) {
LAB_000a22b0:
            if (bVar26) {
              if (parameters->options_ == (General_options *)0x0) {
                piVar62[-2] = (int)"options";
                piVar62[-3] = 0x5c;
                piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                piVar62[-5] = 0xa42f6;
                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
              }
              if ((parameters->options_->gc_sections_).value != false) {
                piVar62[-3] = (int)pbVar70;
                piVar62[-4] = (int)this;
                piVar62[-5] = 0xa22ee;
                bVar29 = Relobj::is_section_name_included((Relobj *)piVar62[-4],(char *)piVar62[-3])
                ;
                if (bVar29) {
LAB_000a2c68:
                  offset._0_4_ = this;
                  offset._4_4_ = (_Base_ptr)i;
                  piVar62[-3] = (int)&offset;
                  piVar62[-4] = (int)symtab->gc_;
                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */
                  piVar62[-5] = 0xa2c8c;
                  std::
                  vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>
                  ::emplace_back<std::pair<gold::Relobj*,_unsigned_int>_>
                            ((vector<std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>
                              *)piVar62[-4],(pair<gold::Relobj*,_unsigned_int> *)piVar62[-3]);
                }
                else {
                  piVar62[-2] = (int)pbVar70;
                  piVar62[-3] = (int)this;
                  piVar62[-4] = (int)layout;
                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */
                  piVar62[-5] = 0xa2313;
                  bVar29 = Layout::keep_input_section
                                     ((Layout *)piVar62[-4],(Relobj *)piVar62[-3],
                                      (char *)piVar62[-2]);
                  if ((bVar29) ||
                     ((undefined1 *)
                      ((int)&local_124[-1].deferred_layout_relocs_.
                             super__Vector_base<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                             ._M_impl._M_start + 2U) < (undefined1 *)0x2)) goto LAB_000a2c68;
                }
                piVar62[-3] = (int)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_"
                ;
                piVar62[-4] = (int)pbVar70;
                piVar62[-5] = 0xa234c;
                sVar33 = strspn((char *)piVar62[-4],(char *)piVar62[-3]);
                uVar69 = i;
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX;
                ppuVar57 = local_120;
                if (pbVar70[sVar33] == 0) {
                  pGVar13 = symtab->gc_;
                  piVar62[-4] = (int)pbVar70;
                  offset._0_4_ = (Sized_relobj_file<64,_false> *)&stack0xffffff84;
                  piVar62[-5] = 0xa3075;
                  sVar33 = strlen((char *)piVar62[-4]);
                  piVar62[-1] = 0;
                  piVar62[-2] = (int)(pbVar70 + sVar33);
                  piVar62[-3] = (int)pbVar70;
                  piVar62[-4] = (int)&offset;
                  piVar62[-5] = 0xa3089;
                  std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
                  _M_construct<char_const*>();
                  p_Var53 = offset._4_4_;
                  pSVar51 = (Sized_relobj_file<64,_false> *)offset;
                  p_Var52 = (pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header._M_header
                            ._M_parent;
                  p_Var73 = &(pGVar13->cident_sections_)._M_t._M_impl.super__Rb_tree_header.
                             _M_header;
                  shdr_2.p_ = (Shdr_data<64> *)this;
                  local_174 = p_Var73;
                  if (p_Var52 == (_Base_ptr)0x0) {
LAB_000a320c:
                    piVar62[-3] = (int)&local_f1;
                    piVar62[-4] = (int)&local_e8;
                    piVar62[-5] = (int)&std::piecewise_construct;
                    local_e8 = &offset;
                    piVar62[-6] = (int)p_Var73;
                    piVar62[-7] = (int)&pGVar13->cident_sections_;
                    piVar62[-8] = (int)local_100;
                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */
                    piVar62[-9] = 0xa324d;
                    std::
                    _Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>
                    ::
                    _M_emplace_hint_unique<const_std::piecewise_construct_t&,_std::tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>,_std::tuple<>_>
                              ((_Rb_tree<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>,_std::_Select1st<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>,_std::less<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::allocator<std::pair<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::unordered_set<std::pair<gold::Relobj*,_unsigned_int>,_gold::Section_id_hash,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>_>_>_>_>
                                *)piVar62[-8],(_Base_ptr)piVar62[-7],
                               (piecewise_construct_t *)piVar62[-6],
                               (tuple<const_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>&>
                                *)piVar62[-5],(tuple<> *)piVar62[-4]);
                    local_174 = local_100[0];
                  }
                  else {
LAB_000a30e5:
                    do {
                      p_Var66 = p_Var52;
                      p_Var52 = p_Var66[1]._M_parent;
                      p_Var35 = p_Var53;
                      if (p_Var52 <= p_Var53) {
                        p_Var35 = p_Var52;
                      }
                      if (p_Var35 == (_Base_ptr)0x0) {
LAB_000a3116:
                        iVar50 = (int)p_Var52 - (int)p_Var53;
                      }
                      else {
                        piVar62[-2] = (int)p_Var35;
                        piVar62[-3] = (int)pSVar51;
                        piVar62[-4] = p_Var66[1]._M_color;
                        piVar62[-5] = 0xa310f;
                        iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);
                        if (iVar50 == 0) goto LAB_000a3116;
                      }
                      if (-1 < iVar50) {
                        p_Var52 = p_Var66->_M_left;
                        local_174 = p_Var66;
                        if (p_Var66->_M_left == (_Base_ptr)0x0) break;
                        goto LAB_000a30e5;
                      }
                      p_Var52 = p_Var66->_M_right;
                    } while (p_Var66->_M_right != (_Base_ptr)0x0);
                    bVar29 = p_Var73 == local_174;
                    p_Var73 = local_174;
                    if (bVar29) goto LAB_000a320c;
                    p_Var52 = local_174[1]._M_parent;
                    p_Var35 = p_Var52;
                    if (p_Var53 <= p_Var52) {
                      p_Var35 = p_Var53;
                    }
                    if (p_Var35 == (_Base_ptr)0x0) {
LAB_000a3174:
                      iVar50 = (int)p_Var53 - (int)p_Var52;
                    }
                    else {
                      piVar62[-2] = (int)p_Var35;
                      piVar62[-3] = local_174[1]._M_color;
                      piVar62[-4] = (int)pSVar51;
                      piVar62[-5] = 0xa3167;
                      iVar50 = memcmp((void *)piVar62[-4],(void *)piVar62[-3],piVar62[-2]);
                      if (iVar50 == 0) goto LAB_000a3174;
                    }
                    if (iVar50 < 0) goto LAB_000a320c;
                  }
                  p_Var36 = (_func_int_varargs *)(uVar69 ^ (uint)this);
                  ppuVar57 = (undefined **)&local_174[2]._M_left;
                  local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;
                  piVar62[-1] = (int)p_Var36;
                  piVar62[-2] = (int)&shdr_2;
                  piVar62[-3] = local_170;
                  piVar62[-4] = (int)ppuVar57;
                  piVar62[-5] = 0xa31b4;
                  p_Var37 = std::
                            _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_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
                                      ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                                        *)piVar62[-4],piVar62[-3],(key_type *)piVar62[-2],
                                       piVar62[-1]);
                  if ((p_Var37 == (__node_base *)0x0) ||
                     (SVar49.p_ = (Shdr_data<64> *)extraout_ECX_07,
                     p_Var37->_M_nxt == (_Hash_node_base *)0x0)) {
                    piVar62[-4] = 0x10;
                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */
                    piVar62[-5] = 0xa32a8;
                    pp_Var38 = (_func_int_varargs **)operator_new(piVar62[-4]);
                    *pp_Var38 = (_func_int_varargs *)0x0;
                    pp_Var38[1] = (_func_int_varargs *)this;
                    pp_Var38[2] = (_func_int_varargs *)uVar69;
                    local_e4 = local_174[3]._M_right;
                    piVar62[-4] = 1;
                    piVar62[-5] = (int)local_174[3]._M_parent;
                    piVar62[-6] = (int)local_174[2]._M_right;
                    piVar62[-7] = (int)&local_174[3]._M_left;
                    piVar62[-8] = (int)local_10c;
                    piVar62[-9] = 0xa32eb;
                    std::__detail::_Prime_rehash_policy::_M_need_rehash
                              (piVar62[-8],piVar62[-7],piVar62[-6]);
                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_09;
                    if (local_10c[0] != '\0') {
                      piVar62[-2] = (int)&local_e4;
                      piVar62[-3] = local_108;
                      piVar62[-4] = (int)ppuVar57;
                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */
                      piVar62[-5] = 0xa3696;
                      std::
                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                      ::_M_rehash((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                                   *)piVar62[-4],piVar62[-3],(__rehash_state *)piVar62[-2]);
                      local_170 = (uint)p_Var36 % (uint)local_174[2]._M_right;
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_12;
                    }
                    pp_Var38[3] = p_Var36;
                    ppuVar57 = (undefined **)(local_170 * 4);
                    piVar14 = (int *)(&(local_174[2]._M_left)->_M_color)[local_170];
                    if (piVar14 == (int *)0x0) {
                      *pp_Var38 = (_func_int_varargs *)local_174[3]._M_color;
                      SVar49.p_ = (Shdr_data<64> *)local_174[2]._M_left;
                      local_174[3]._M_color = (_Rb_tree_color)pp_Var38;
                      if (*pp_Var38 != (_func_int_varargs *)0x0) {
                        (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->
                          super_Sized_relobj<64,_false>).super_Relobj.super_Object._vptr_Object)
                        [*(uint *)(*pp_Var38 + 0xc) % (uint)local_174[2]._M_right] = pp_Var38;
                      }
                      (&(((Sized_relobj_file<64,_false> *)SVar49.p_)->super_Sized_relobj<64,_false>)
                        .super_Relobj.super_Object._vptr_Object)[local_170] =
                           (_func_int_varargs **)(local_174 + 3);
                    }
                    else {
                      *pp_Var38 = (_func_int_varargs *)*piVar14;
                      *(_func_int_varargs ***)(&(local_174[2]._M_left)->_M_color)[local_170] =
                           pp_Var38;
                    }
                    local_174[3]._M_parent =
                         (_Base_ptr)((int)&(local_174[3]._M_parent)->_M_color + 1);
                  }
                  if ((Sized_relobj_file<64,_false> *)offset !=
                      (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                    piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;
                    piVar62[-5] = 0xa31e7;
                    operator_delete((void *)piVar62[-4]);
                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_08;
                    ppuVar57 = local_120;
                  }
                }
              }
            }
            if ((bVar3 == 0) ||
               ((local_124 != (Sized_relobj_file<64,_false> *)0x9 &&
                (local_124 != (Sized_relobj_file<64,_false> *)0x4)))) {
              if ((local_124 != (Sized_relobj_file<64,_false> *)0x11) || (bVar4 == false)) {
                piVar62[-3] = (int)&shdr;
                piVar62[-4] = (int)this;
                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */
                piVar62[-5] = 0xa29c8;
                bVar29 = check_eh_frame_flags
                                   ((Sized_relobj_file<64,_false> *)piVar62[-4],
                                    (Shdr<64,_false> *)piVar62[-3]);
                uVar69 = i;
                bVar75 = false;
                bVar29 = !bVar29;
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_03;
                if (!bVar29) {
                  SVar49.p_ = (Shdr_data<64> *)0xa;
                  pbVar65 = pbVar70;
                  pbVar72 = (byte *)".eh_frame";
                  do {
                    if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                        (Sized_relobj_file<64,_false> *)0x0) break;
                    SVar49.p_ = (Shdr_data<64> *)
                                ((int)&((Sized_relobj_file<64,_false> *)((int)SVar49.p_ + -0x13c))->
                                       output_views_ + 3);
                    bVar75 = *pbVar65 < *pbVar72;
                    bVar29 = *pbVar65 == *pbVar72;
                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                  } while (bVar29);
                  if (((!bVar75 && !bVar29) == bVar75) && (local_124 = pSVar5, bVar4 == false)) {
                    if (bVar26) {
                      (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                      super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                      ._M_impl._M_start[i] =
                           (Output_section *)((this->is_deferred_layout_ != false) + 1);
                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                                ._M_impl._M_start;
                      *(undefined4 *)(puVar18 + i) = 0xffffffff;
                      *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;
                    }
                    else if (this->is_deferred_layout_ == false) {
                      if (eh_frame_sections.
                          super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                          _M_finish ==
                          eh_frame_sections.
                          super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                          _M_end_of_storage) {
                        piVar62[-2] = (int)&i;
                        piVar62[-3] = (int)eh_frame_sections.
                                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                           ._M_impl._M_finish;
                        piVar62[-4] = (int)&eh_frame_sections;
                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = 0xa426e;
                        std::vector<unsigned_int,_std::allocator<unsigned_int>_>::
                        _M_realloc_insert<unsigned_int_const&>
                                  ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)
                                   piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_29;
                      }
                      else {
                        *eh_frame_sections.
                         super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                         _M_finish = i;
                        eh_frame_sections.
                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                        _M_finish = eh_frame_sections.
                                    super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                    _M_impl._M_finish + 1;
                      }
                    }
                    else {
                      uVar39 = puVar31[i];
                      uVar11 = puVar30[i];
                      piVar62[-1] = 0xa2a5f;
                      std::__cxx11::
                      basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
                      basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>
                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);
                      local_6c = uVar69;
                      local_68 = uVar11;
                      local_64 = uVar39;
                      local_60 = (Input_file *)local_134->sh_name;
                      local_58 = (int)local_134->sh_flags;
                      local_54 = *(uint *)((int)&local_134->sh_flags + 4);
                      local_50 = *(undefined4 *)&local_134->sh_addr;
                      local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);
                      local_48 = *(Compressed_section_map **)&local_134->sh_offset;
                      local_44 = *(pointer *)((int)&local_134->sh_offset + 4);
                      local_40 = *(pointer *)&local_134->sh_size;
                      local_3c = *(pointer *)((int)&local_134->sh_size + 4);
                      local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>
                                  *)local_134->sh_link;
                      local_34 = (Object_merge_map *)local_134->sh_info;
                      local_30 = *(undefined4 *)&local_134->sh_addralign;
                      local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);
                      local_28 = *(Symbols_data **)&local_134->sh_entsize;
                      local_24 = *(uint **)((int)&local_134->sh_entsize + 4);
                      piVar62[-3] = (int)&offset;
                      piVar62[-4] = (int)&this->deferred_layout_;
                      local_5c = pSVar5;
                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */
                      piVar62[-5] = 0xa2aea;
                      std::
                      vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                      ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>
                                ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                                  *)piVar62[-4],(Deferred_layout *)piVar62[-3]);
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_04;
                      ppuVar57 = (undefined **)uVar69;
                      if ((Sized_relobj_file<64,_false> *)offset !=
                          (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                        piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;
                        piVar62[-5] = 0xa2b0a;
                        operator_delete((void *)piVar62[-4]);
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_05;
                        ppuVar57 = local_120;
                      }
                    }
                    goto LAB_000a23a1;
                  }
                }
                if (bVar24) {
                  pGVar34 = parameters->options_;
                  if (pGVar34 == (General_options *)0x0) {
                    piVar62[-1] = (int)ppuVar57;
                    piVar62[-2] = (int)"options";
                    piVar62[-3] = 0x5c;
                    piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    piVar62[-5] = 0xa4330;
                    do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                  }
                  iVar50 = i * 4;
                  pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                            super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                            ._M_impl._M_start[i];
                  SVar49.p_ = (Shdr_data<64> *)this;
                  if ((pGVar34->gc_sections_).value == false) {
LAB_000a2f0d:
                    if (pGVar34->icf_status_ != ICF_NONE) {
                      if (pOVar44 == (Output_section *)0x0) {
                        puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                                  super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                                  ._M_impl._M_start;
                        uVar69 = *(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i];
                        SVar49.p_ = shdr.p_;
                        if (uVar69 != 0xffffffff) {
                          piVar62[-1] = uVar69;
                          piVar62[-2] = (int)"do_layout";
                          piVar62[-3] = 0x6f9;
                          piVar62[-4] = (int)"../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
                          piVar62[-5] = (int)&UNK_000a2f61;
                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                        }
                        goto LAB_000a23a1;
                      }
LAB_000a2cf0:
                      SVar49.p_ = shdr.p_;
                      if (((shdr.p_)->sh_flags & 2) != 0) {
                        piVar62[-2] = i;
                        piVar62[-3] = (int)this;
                        piVar62[-4] = (int)symtab->icf_;
                        piVar62[-5] = 0xa3ddb;
                        bVar29 = Icf::is_section_folded
                                           ((Icf *)piVar62[-4],(Relobj *)piVar62[-3],piVar62[-2]);
                        if (bVar29) {
                          if (parameters->options_ == (General_options *)0x0) {
                            piVar62[-1] = iVar50;
                            piVar62[-2] = (int)"options";
                            piVar62[-3] = 0x5c;
                            piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */
                            piVar62[-5] = 0xa44a9;
                            do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2])
                            ;
                          }
                          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_20;
                          ppuVar57 = local_120;
                          uVar69 = i;
                          if ((parameters->options_->print_icf_sections_).value == false)
                          goto LAB_000a2c3a;
                          piVar62[-1] = i;
                          piVar62[-2] = (int)this;
                          piVar62[-3] = (int)symtab->icf_;
                          piVar62[-4] = (int)&local_11c;
                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */
                          piVar62[-5] = 0xa4081;
                          Icf::get_folded_section
                                    ((Icf *)piVar62[-3],(Relobj *)piVar62[-2],piVar62[-1]);
                          iVar50 = *local_11c;
                          iVar12 = local_11c[1];
                          piVar62[-2] = local_118;
                          piVar62[-3] = (int)local_11c;
                          piVar62[-4] = (int)&offset;
                          pcVar21 = *(code **)(iVar50 + 0x40);
                          piVar62[-5] = 0xa409e;
                          (*pcVar21)();
                          pSVar51 = (Sized_relobj_file<64,_false> *)offset;
                          pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                                    name_._M_dataplus._M_p;
                          p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                                    _vptr_Object[0x10];
                          if (p_Var36 == do_section_name) {
                            piVar62[-3] = i;
                            piVar62[-4] = (int)&this->elf_file_;
                            piVar62[-5] = (int)&shdr_2;
                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */
                            piVar62[-6] = 0xa40ec;
                            elfcpp::Elf_file<64,_false,_gold::Object>::section_name
                                      ((Elf_file<64,_false,_gold::Object> *)piVar62[-4],piVar62[-3])
                            ;
                            piVar61 = piVar62 + -4;
                          }
                          else {
                            piVar62[-3] = i;
                            piVar62[-4] = (int)this;
                            piVar61 = piVar62 + -5;
                            piVar62[-5] = (int)&shdr_2;
                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */
                            piVar62[-6] = 0xa42b7;
                            (*p_Var36)();
                          }
                          SVar49.p_ = shdr_2.p_;
                          pcVar28 = program_name;
                          piVar61[-1] = (int)
                                        "%s: ICF folding section \'%s\' in file \'%s\' into \'%s\' in file \'%s\'"
                          ;
                          piVar61[-2] = 0xa4120;
                          uVar39 = gettext();
                          *piVar61 = iVar12;
                          piVar61[-1] = (int)pSVar51;
                          piVar61[-2] = (int)pcVar22;
                          piVar61[-3] = (int)SVar49.p_;
                          piVar61[-4] = (int)pcVar28;
                          piVar61[-5] = uVar39;
                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */
                          piVar61[-6] = 0xa4146;
                          gold_info((char *)piVar61[-5]);
                          SVar49.p_ = (Shdr_data<64> *)extraout_ECX_24;
                          if (shdr_2.p_ != (Shdr_data<64> *)local_94) {
                            piVar61[-1] = (int)shdr_2.p_;
                            piVar61[-2] = 0xa4162;
                            operator_delete((void *)piVar61[-1]);
                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_25;
                          }
                          piVar62 = piVar61 + 3;
                          if ((Sized_relobj_file<64,_false> *)offset !=
                              (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                            piVar61[-1] = (int)(Sized_relobj_file<64,_false> *)offset;
                            piVar61[-2] = 0xa417e;
                            operator_delete((void *)piVar61[-1]);
                            piVar62 = piVar61 + 3;
                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_26;
                          }
                          goto LAB_000a4181;
                        }
                        iVar50 = i * 4;
                        pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.
                                  output_sections_.
                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                                  ._M_impl._M_start[i];
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_20;
                        ppuVar57 = local_120;
                      }
                    }
                  }
                  else {
                    if (pOVar44 == (Output_section *)0x0) {
                      puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                                super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                                ._M_impl._M_start;
                      if ((*(uint *)((int)puVar18 + i * 8 + 4) & (uint)puVar18[i]) != 0xffffffff) {
                        piVar62[-1] = (int)this;
                        piVar62[-2] = (int)"do_layout";
                        piVar62[-3] = 0x6e4;
                        piVar62[-4] = (int)"../../gold/object.cc";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = (int)&UNK_000a342d;
                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                      }
                      goto LAB_000a23a1;
                    }
                    if (((shdr.p_)->sh_flags & 2) != 0) {
                      offset._4_4_ = (_Base_ptr)i;
                      pGVar13 = symtab->gc_;
                      offset._0_4_ = this;
                      piVar62[-2] = (int)&offset;
                      piVar62[-3] = (int)&pGVar13->referenced_list_;
                      piVar62[-4] = (int)&local_110;
                      piVar62[-5] = 0xa2ed3;
                      std::
                      _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                      ::find((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<gold::Relobj*,_unsigned_int>,_std::allocator<std::pair<gold::Relobj*,_unsigned_int>_>,_std::__detail::_Identity,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                              *)piVar62[-3],(key_type *)piVar62[-2]);
                      pGVar34 = parameters->options_;
                      if (local_110 != 0) {
                        if (pGVar34 == (General_options *)0x0) {
                          piVar62[-1] = 0;
                          piVar62[-2] = (int)"options";
                          piVar62[-3] = 0x5c;
                          piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                          piVar62[-5] = 0xa434c;
                          do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                        }
                        iVar50 = i * 4;
                        pOVar44 = (this->super_Sized_relobj<64,_false>).super_Relobj.
                                  output_sections_.
                                  super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                                  ._M_impl._M_start[i];
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;
                        ppuVar57 = (undefined **)this;
                        goto LAB_000a2f0d;
                      }
                      if (pGVar34 == (General_options *)0x0) {
                        piVar62[-1] = 0;
                        piVar62[-2] = (int)"options";
                        piVar62[-3] = 0x5c;
                        piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = 0xa43a7;
                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                      }
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_06;
                      uVar69 = i;
                      if ((pGVar34->print_gc_sections_).value == false) goto LAB_000a2c3a;
                      pcVar22 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                                name_._M_dataplus._M_p;
                      p_Var36 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                                _vptr_Object[0x10];
                      if (p_Var36 == do_section_name) {
                        piVar62[-2] = i;
                        piVar62[-3] = (int)&this->elf_file_;
                        piVar62[-4] = (int)&offset;
                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = 0xa3909;
                        elfcpp::Elf_file<64,_false,_gold::Object>::section_name
                                  ((Elf_file<64,_false,_gold::Object> *)piVar62[-3],piVar62[-2]);
                        puVar60 = piVar62 + -3;
                      }
                      else {
                        piVar62[-2] = i;
                        piVar62[-3] = (int)this;
                        puVar60 = piVar62 + -4;
                        piVar62[-4] = (int)&offset;
                        piVar62[-5] = 0xa42a2;
                        (*p_Var36)();
                      }
                      pSVar51 = (Sized_relobj_file<64,_false> *)offset;
                      pcVar28 = program_name;
                      puVar60[-1] = "%s: removing unused section from \'%s\' in file \'%s\'";
                      puVar60[-2] = 0xa3934;
                      uVar39 = gettext();
                      puVar60[2] = pcVar22;
                      puVar60[1] = pSVar51;
                      *puVar60 = pcVar28;
                      puVar60[-1] = uVar39;
                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */
                      puVar60[-2] = 0xa394e;
                      gold_info((char *)puVar60[-1]);
                      piVar62 = puVar60 + 3;
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_14;
                      if ((Sized_relobj_file<64,_false> *)offset !=
                          (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                        puVar60[-1] = (Sized_relobj_file<64,_false> *)offset;
                        puVar60[-2] = 0xa3968;
                        operator_delete((void *)puVar60[-1]);
                        piVar62 = puVar60 + 3;
                        SVar49.p_ = (Shdr_data<64> *)extraout_ECX_15;
                      }
LAB_000a4181:
                      ppuVar57 = &_GLOBAL_OFFSET_TABLE_;
                      uVar69 = i;
                      goto LAB_000a2c3a;
                    }
                    SVar49 = shdr;
                    if (pGVar34->icf_status_ != ICF_NONE) goto LAB_000a2cf0;
                  }
                  if (pOVar44 != (Output_section *)0x2) {
                    if (bVar26) goto LAB_000a2b6b;
LAB_000a2d10:
                    uVar69 = i;
                    iVar12 = *(int *)((int)puVar30 + iVar50);
                    piVar62[-4] = (int)&offset;
                    piVar62[-5] = *(undefined4 *)((int)puVar31 + iVar50);
                    piVar62[-6] = iVar12;
                    piVar62[-7] = (int)local_124;
                    piVar62[-8] = (int)&shdr;
                    piVar62[-9] = (int)pbVar70;
                    piVar62[-10] = i;
                    piVar62[-0xb] = (int)this;
                    piVar62[-0xc] = (int)layout;
                    piVar62[-0xd] = 0xa2d54;
                    pOVar44 = Layout::layout<64,_false>
                                        ((Layout *)piVar62[-0xc],
                                         (Sized_relobj_file<64,_false> *)piVar62[-0xb],piVar62[-10],
                                         (char *)piVar62[-9],(Shdr<64,_false> *)piVar62[-8],
                                         piVar62[-7],piVar62[-6],piVar62[-5],(off_t *)piVar62[-4]);
                    *(Output_section **)
                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                           ._M_impl._M_start + iVar50) = pOVar44;
                    ppuVar57 = (undefined **)
                               ((uint)offset._4_4_ & (uint)(Sized_relobj_file<64,_false> *)offset);
                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                              ._M_impl._M_start + uVar69;
                    if ((Sized_relobj_file<64,_false> *)ppuVar57 ==
                        (Sized_relobj_file<64,_false> *)0xffffffff) {
                      *(undefined4 *)puVar18 = 0xffffffff;
                      *(undefined4 *)((int)puVar18 + 4) = 0xffffffff;
                    }
                    else {
                      *(Sized_relobj_file<64,_false> **)puVar18 =
                           (Sized_relobj_file<64,_false> *)offset;
                      *(_Base_ptr *)((int)puVar18 + 4) = offset._4_4_;
                    }
                    if ((((uint)(Sized_relobj_file<64,_false> *)offset & (uint)offset._4_4_) ==
                         0xffffffff) && (iVar12 != 0)) {
                      (this->super_Sized_relobj<64,_false>).super_Relobj.
                      relocs_must_follow_section_writes_ = true;
                    }
                    SVar49.p_ = (Shdr_data<64> *)(Sized_relobj_file<64,_false> *)offset;
                    if (bVar4 == false) {
                      if (parameters->options_ == (General_options *)0x0) {
                        piVar62[-1] = 0;
                        piVar62[-2] = (int)"options";
                        piVar62[-3] = 0x5c;
                        piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */
                        piVar62[-5] = 0xa43fb;
                        do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                      }
                      if ((parameters->options_->gdb_index_).value != false) {
                        bVar29 = false;
                        bVar75 = ((shdr.p_)->sh_flags & 2) == 0;
                        if (bVar75) {
                          SVar49.p_ = (Shdr_data<64> *)0xc;
                          pbVar65 = pbVar70;
                          pbVar72 = (byte *)".debug_info";
                          do {
                            if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                                (Sized_relobj_file<64,_false> *)0x0) break;
                            SVar49.p_ = (Shdr_data<64> *)
                                        ((int)&((Sized_relobj_file<64,_false> *)
                                               ((int)SVar49.p_ + -0x13c))->output_views_ + 3);
                            bVar29 = *pbVar65 < *pbVar72;
                            bVar75 = *pbVar65 == *pbVar72;
                            pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                            pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                          } while (bVar75);
                          bVar76 = false;
                          bVar29 = (!bVar29 && !bVar75) == bVar29;
                          if (!bVar29) {
                            SVar49.p_ = (Shdr_data<64> *)0xd;
                            pbVar65 = pbVar70;
                            pbVar72 = (byte *)".zdebug_info";
                            do {
                              if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                                  (Sized_relobj_file<64,_false> *)0x0) break;
                              SVar49.p_ = (Shdr_data<64> *)
                                          ((int)&((Sized_relobj_file<64,_false> *)
                                                 ((int)SVar49.p_ + -0x13c))->output_views_ + 3);
                              bVar76 = *pbVar65 < *pbVar72;
                              bVar29 = *pbVar65 == *pbVar72;
                              pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                              pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                            } while (bVar29);
                            bVar75 = false;
                            bVar29 = (!bVar76 && !bVar29) == bVar76;
                            if (!bVar29) {
                              SVar49.p_ = (Shdr_data<64> *)0xd;
                              pbVar65 = pbVar70;
                              pbVar72 = (byte *)".debug_types";
                              do {
                                if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                                    (Sized_relobj_file<64,_false> *)0x0) break;
                                SVar49.p_ = (Shdr_data<64> *)
                                            ((int)&((Sized_relobj_file<64,_false> *)
                                                   ((int)SVar49.p_ + -0x13c))->output_views_ + 3);
                                bVar75 = *pbVar65 < *pbVar72;
                                bVar29 = *pbVar65 == *pbVar72;
                                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                              } while (bVar29);
                              bVar76 = false;
                              bVar29 = (!bVar75 && !bVar29) == bVar75;
                              if (!bVar29) {
                                SVar49.p_ = (Shdr_data<64> *)0xe;
                                pbVar65 = (byte *)".zdebug_types";
                                do {
                                  if ((Sized_relobj_file<64,_false> *)SVar49.p_ ==
                                      (Sized_relobj_file<64,_false> *)0x0) break;
                                  SVar49.p_ = (Shdr_data<64> *)
                                              ((int)&((Sized_relobj_file<64,_false> *)
                                                     ((int)SVar49.p_ + -0x13c))->output_views_ + 3);
                                  bVar76 = *pbVar70 < *pbVar65;
                                  bVar29 = *pbVar70 == *pbVar65;
                                  pbVar70 = pbVar70 + (uint)bVar77 * -2 + 1;
                                  pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                                } while (bVar29);
                                ppuVar57 = &_GLOBAL_OFFSET_TABLE_;
                                if ((!bVar76 && !bVar29) != bVar76) goto LAB_000a23a1;
                              }
                              if (debug_types_sections.
                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                  _M_impl._M_finish ==
                                  debug_types_sections.
                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                  _M_impl._M_end_of_storage) {
                                piVar62[-2] = (int)&i;
                                piVar62[-3] = (int)debug_types_sections.
                                                                                                      
                                                  super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                                  ._M_impl._M_finish;
                                piVar62[-4] = (int)&debug_types_sections;
                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */
                                piVar62[-5] = 0xa42d3;
                                std::vector<unsigned_int,_std::allocator<unsigned_int>_>::
                                _M_realloc_insert<unsigned_int_const&>
                                          ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)
                                           piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);
                                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_31;
                                ppuVar57 = local_120;
                              }
                              else {
                                *debug_types_sections.
                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                 _M_impl._M_finish = i;
                                debug_types_sections.
                                super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                _M_impl._M_finish =
                                     debug_types_sections.
                                     super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                     ._M_impl._M_finish + 1;
                                ppuVar57 = local_120;
                              }
                              goto LAB_000a23a1;
                            }
                          }
                          if (debug_info_sections.
                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                              _M_impl._M_finish ==
                              debug_info_sections.
                              super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                              _M_impl._M_end_of_storage) {
                            piVar62[-2] = (int)&i;
                            piVar62[-3] = (int)debug_info_sections.
                                               super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                               ._M_impl._M_finish;
                            piVar62[-4] = (int)&debug_info_sections;
                            piVar62[-5] = 0xa428a;
                            std::vector<unsigned_int,_std::allocator<unsigned_int>_>::
                            _M_realloc_insert<unsigned_int_const&>
                                      ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)
                                       piVar62[-4],(uint *)piVar62[-3],(uint *)piVar62[-2]);
                            SVar49.p_ = (Shdr_data<64> *)extraout_ECX_30;
                          }
                          else {
                            *debug_info_sections.
                             super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl
                             ._M_finish = i;
                            debug_info_sections.
                            super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                            _M_finish = debug_info_sections.
                                        super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>
                                        ._M_impl._M_finish + 1;
                          }
                        }
                      }
                    }
                  }
                }
                else {
                  iVar50 = i * 4;
                  if ((this->is_deferred_layout_ == false) || (((shdr.p_)->sh_flags & 2) == 0)) {
                    if (!bVar26) goto LAB_000a2d10;
LAB_000a2b6b:
                    *(undefined4 *)
                     ((int)(this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                           super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                           ._M_impl._M_start + iVar50) = 1;
                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                              ._M_impl._M_start;
                    *(undefined4 *)(puVar18 + i) = 0xffffffff;
                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;
                  }
                  else {
                    uVar39 = puVar31[i];
                    uVar11 = puVar30[i];
                    piVar62[-1] = 0xa3ea6;
                    std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>
                    ::basic_string((basic_string<char,_std::char_traits<char>,_std::allocator<char>_>
                                    *)*piVar62,(char *)piVar62[1],(allocator<char> *)piVar62[2]);
                    local_68 = uVar11;
                    local_6c = uVar69;
                    local_64 = uVar39;
                    local_60 = (Input_file *)local_134->sh_name;
                    local_58 = (int)local_134->sh_flags;
                    local_54 = *(uint *)((int)&local_134->sh_flags + 4);
                    local_50 = *(undefined4 *)&local_134->sh_addr;
                    local_4c = *(Xindex **)((int)&local_134->sh_addr + 4);
                    local_48 = *(Compressed_section_map **)&local_134->sh_offset;
                    local_44 = *(pointer *)((int)&local_134->sh_offset + 4);
                    local_40 = *(pointer *)&local_134->sh_size;
                    local_3c = *(pointer *)((int)&local_134->sh_size + 4);
                    local_38 = (vector<gold::Relocatable_relocs*,_std::allocator<gold::Relocatable_relocs*>_>
                                *)local_134->sh_link;
                    local_34 = (Object_merge_map *)local_134->sh_info;
                    local_30 = *(undefined4 *)&local_134->sh_addralign;
                    local_2c = *(Read_relocs_data **)((int)&local_134->sh_addralign + 4);
                    local_28 = *(Symbols_data **)&local_134->sh_entsize;
                    local_24 = *(uint **)((int)&local_134->sh_entsize + 4);
                    piVar62[-3] = (int)&offset;
                    piVar62[-4] = (int)&this->deferred_layout_;
                    local_5c = local_124;
                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */
                    piVar62[-5] = 0xa3f32;
                    std::
                    vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                    ::emplace_back<gold::Sized_relobj_file<64,_false>::Deferred_layout>
                              ((vector<gold::Sized_relobj_file<64,_false>::Deferred_layout,_std::allocator<gold::Sized_relobj_file<64,_false>::Deferred_layout>_>
                                *)piVar62[-4],(Deferred_layout *)piVar62[-3]);
                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_22;
                    if ((Sized_relobj_file<64,_false> *)offset !=
                        (Sized_relobj_file<64,_false> *)&stack0xffffff84) {
                      local_124 = (Sized_relobj_file<64,_false> *)&_GLOBAL_OFFSET_TABLE_;
                      piVar62[-4] = (int)(Sized_relobj_file<64,_false> *)offset;
                      piVar62[-5] = 0xa3f4e;
                      operator_delete((void *)piVar62[-4]);
                      SVar49.p_ = (Shdr_data<64> *)extraout_ECX_23;
                    }
                    (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
                    super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>
                    ._M_impl._M_start[i] = (Output_section *)0x2;
                    puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                              super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                              ._M_impl._M_start;
                    *(undefined4 *)(puVar18 + i) = 0xffffffff;
                    *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;
                    ppuVar57 = (undefined **)local_124;
                  }
                }
              }
            }
            else if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                     _M_impl._M_finish ==
                     reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                     _M_impl._M_end_of_storage) {
              piVar62[-2] = (int)&i;
              piVar62[-3] = (int)reloc_sections.
                                 super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
                                 _M_impl._M_finish;
              piVar62[-4] = (int)&reloc_sections;
              piVar62[-5] = 0xa3e57;
              std::vector<unsigned_int,_std::allocator<unsigned_int>_>::
              _M_realloc_insert<unsigned_int_const&>
                        ((vector<unsigned_int,_std::allocator<unsigned_int>_> *)piVar62[-4],
                         (uint *)piVar62[-3],(uint *)piVar62[-2]);
              SVar49.p_ = (Shdr_data<64> *)extraout_ECX_21;
            }
            else {
              *reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
               _M_impl._M_finish = i;
              reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl
              ._M_finish = reloc_sections.
                           super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
                           _M_finish + 1;
            }
          }
          else {
            piVar62[-1] = (int)symtab;
            piVar62[-2] = i;
            piVar62[-3] = (int)pbVar70;
            piVar62[-4] = (int)this;
            piVar62[-5] = 0xa2406;
            bVar29 = Object::handle_gnu_warning_section
                               ((Object *)piVar62[-4],(char *)piVar62[-3],piVar62[-2],
                                (Symbol_table *)piVar62[-1]);
            bVar75 = !bVar29;
            if (bVar29) {
              bVar75 = false;
              bVar29 = bVar4 == false;
              if (bVar29) {
                if (parameters->options_ == (General_options *)0x0) {
                  piVar62[-1] = 0;
                  piVar62[-2] = (int)"options";
                  piVar62[-3] = 0x5c;
                  piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */
                  piVar62[-5] = 0xa4433;
                  do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
                }
                bVar75 = false;
                bVar29 = (parameters->options_->shared_).value == false;
                if (bVar29) {
                  puVar19 = omit.super__Bvector_base<std::allocator<bool>_>._M_impl.
                            super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p +
                            (i >> 5);
                  bVar75 = false;
                  *puVar19 = *puVar19 | 1 << ((byte)i & 0x1f);
                  bVar29 = *puVar19 == 0;
                }
              }
            }
            iVar50 = 0x10;
            pbVar65 = pbVar70;
            pbVar72 = (byte *)".note.GNU-stack";
            do {
              pbVar71 = pbVar72;
              if (iVar50 == 0) break;
              iVar50 = iVar50 + -1;
              pbVar71 = pbVar72 + (uint)bVar77 * -2 + 1;
              bVar75 = *pbVar65 < *pbVar72;
              bVar29 = *pbVar65 == *pbVar72;
              pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
              pbVar72 = pbVar71;
            } while (bVar29);
            if ((!bVar75 && !bVar29) == bVar75) {
              local_137 = true;
              local_16c = (uint)(shdr.p_)->sh_flags | local_16c;
              local_168 = *(uint *)((int)&(shdr.p_)->sh_flags + 4) | local_168;
              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
              _M_start.super__Bit_iterator_base._M_p[i >> 5] =
                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                   _M_start.super__Bit_iterator_base._M_p[i >> 5] | 1 << ((byte)i & 0x1f);
            }
            piVar62[-3] = (int)pbVar70;
            piVar62[-4] = (int)this;
            piVar62[-5] = 0xa2497;
            bVar29 = Object::handle_split_stack_section((Object *)piVar62[-4],(char *)piVar62[-3]);
            SVar49.p_ = (Shdr_data<64> *)i;
            pPVar27 = parameters;
            bVar48 = (byte)i;
            if ((bVar29) && (bVar4 == false)) {
              if (parameters->options_ == (General_options *)0x0) {
                piVar62[-1] = (int)pbVar71;
                piVar62[-2] = (int)"options";
                piVar62[-3] = 0x5c;
                piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
                piVar62[-5] = 0xa444f;
                do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
              }
              if ((parameters->options_->shared_).value == false) {
                omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                _M_start.super__Bit_iterator_base._M_p[i >> 5] =
                     omit.super__Bvector_base<std::allocator<bool>_>._M_impl.
                     super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p[i >> 5] |
                     1 << (bVar48 & 0x1f);
              }
            }
            if (pPVar27->target_ == (Target *)0x0) {
              piVar62[-2] = (int)"target";
              piVar62[-3] = 0x69;
              piVar62[-4] = (int)"../../gold/parameters.h";
                    /* WARNING: Subroutine does not return */
              piVar62[-5] = 0xa4314;
              do_gold_unreachable((char *)piVar62[-4],piVar62[-3],(char *)piVar62[-2]);
            }
            iVar50 = *(int *)(*(int *)(pPVar27->target_ + 4) + 0x50);
            bVar29 = iVar50 == 0;
            uVar23 = (uint3)(i >> 8);
            if (bVar29) {
LAB_000a2b98:
              bVar75 = false;
              iVar50 = 0x10;
              pbVar65 = pbVar70;
              pbVar72 = (byte *)".gnu.attributes";
              do {
                if (iVar50 == 0) break;
                iVar50 = iVar50 + -1;
                bVar75 = *pbVar65 < *pbVar72;
                bVar29 = *pbVar65 == *pbVar72;
                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
              } while (bVar29);
              if ((!bVar75 && !bVar29) == bVar75) goto LAB_000a24fe;
              if (local_124 != (Sized_relobj_file<64,_false> *)0x7) goto LAB_000a2522;
LAB_000a2bcb:
              bVar75 = local_124 == (Sized_relobj_file<64,_false> *)0x7;
              bVar29 = local_124 < (Sized_relobj_file<64,_false> *)0x7;
              iVar50 = 0x13;
              pbVar65 = pbVar70;
              pbVar72 = (byte *)".note.gnu.property";
              do {
                if (iVar50 == 0) break;
                iVar50 = iVar50 + -1;
                bVar29 = *pbVar65 < *pbVar72;
                bVar75 = *pbVar65 == *pbVar72;
                pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
              } while (bVar75);
              if ((!bVar29 && !bVar75) != bVar29) {
                bVar29 = (1 << (bVar48 & 0x1f) &
                         omit.super__Bvector_base<std::allocator<bool>_>._M_impl.
                         super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p
                         [(uint)SVar49.p_ >> 5]) != 0;
                ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);
                if (bVar29) goto LAB_000a2c18;
LAB_000a2551:
                bVar29 = false;
                bVar75 = ((shdr.p_)->sh_flags & 0x200) == 0;
                pSVar51 = (Sized_relobj_file<64,_false> *)SVar49.p_;
                if (bVar75) {
                  pSVar51 = (Sized_relobj_file<64,_false> *)0xd;
                  pbVar65 = pbVar70;
                  pbVar72 = (byte *)".gnu.linkonce";
                  do {
                    if (pSVar51 == (Sized_relobj_file<64,_false> *)0x0) break;
                    pSVar51 = (Sized_relobj_file<64,_false> *)((int)&pSVar51[-1].output_views_ + 3);
                    bVar29 = *pbVar65 < *pbVar72;
                    bVar75 = *pbVar65 == *pbVar72;
                    pbVar65 = pbVar65 + (uint)bVar77 * -2 + 1;
                    pbVar72 = pbVar72 + (uint)bVar77 * -2 + 1;
                  } while (bVar75);
                  if ((!bVar29 && !bVar75) == bVar29) {
                    piVar62[-4] = (int)&shdr;
                    piVar62[-5] = (int)pbVar70;
                    piVar62[-6] = (int)SVar49.p_;
                    piVar62[-7] = (int)layout;
                    piVar62[-8] = (int)this;
                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */
                    piVar62[-9] = 0xa352c;
                    bVar29 = include_linkonce_section
                                       ((Sized_relobj_file<64,_false> *)piVar62[-8],
                                        (Layout *)piVar62[-7],piVar62[-6],(char *)piVar62[-5],
                                        (Shdr<64,_false> *)piVar62[-4]);
                    pSVar51 = extraout_ECX_11;
                    SVar49.p_ = (Shdr_data<64> *)extraout_ECX_11;
                    uVar69 = i;
                    if (!bVar29) goto LAB_000a2c3a;
                  }
                }
LAB_000a2583:
                pIVar64 = layout->incremental_inputs_;
                SVar49.p_ = (Shdr_data<64> *)pSVar51;
                if ((pIVar64 == (Incremental_inputs *)0x0) || ((char)ppuVar57 != '\0'))
                goto LAB_000a22b0;
LAB_000a259c:
                piVar62[-4] = (int)local_124;
                piVar62[-5] = 0xa25b0;
                bVar29 = can_incremental_update(piVar62[-4]);
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_00;
                ppuVar57 = local_120;
                if (bVar29) {
                  local_150 = *(undefined4 *)((int)&(shdr.p_)->sh_size + 4);
                  local_154 = (undefined4)(shdr.p_)->sh_size;
                  pCVar10 = (this->super_Sized_relobj<64,_false>).super_Relobj.super_Object.
                            compressed_sections_;
                  if (pCVar10 != (Compressed_section_map *)0x0) {
                    p_Var1 = &(pCVar10->_M_t)._M_impl.super__Rb_tree_header;
                    p_Var73 = (pCVar10->_M_t)._M_impl.super__Rb_tree_header._M_header._M_parent;
                    p_Var52 = &p_Var1->_M_header;
                    if (p_Var73 != (_Base_ptr)0x0) {
                      do {
                        while (p_Var53 = p_Var73, i <= p_Var53[1]._M_color) {
                          p_Var73 = p_Var53->_M_left;
                          p_Var52 = p_Var53;
                          if (p_Var53->_M_left == (_Base_ptr)0x0) goto LAB_000a260d;
                        }
                        pp_Var2 = &p_Var53->_M_right;
                        p_Var73 = *pp_Var2;
                        p_Var53 = p_Var52;
                      } while (*pp_Var2 != (_Base_ptr)0x0);
LAB_000a260d:
                      if ((p_Var1 != (_Rb_tree_header *)p_Var53) &&
                         (((_Rb_tree_header *)p_Var53)->_M_node_count <= i)) {
                        local_154 = *(undefined4 *)((int)p_Var53 + 0x14);
                        local_150 = 0;
                      }
                    }
                  }
                  piVar62[-3] = local_150;
                  piVar62[-4] = local_154;
                  piVar62[-5] = (int)pbVar70;
                  piVar62[-6] = i;
                  piVar62[-7] = (int)this;
                  piVar62[-8] = (int)pIVar64;
                  piVar62[-9] = 0xa263f;
                  Incremental_inputs::report_input_section
                            ((Incremental_inputs *)piVar62[-8],(Object *)piVar62[-7],piVar62[-6],
                             (char *)piVar62[-5],*(off_t *)(piVar62 + -4));
                  SVar49.p_ = (Shdr_data<64> *)extraout_ECX_01;
                }
                goto LAB_000a22b0;
              }
              piVar62[-2] = (int)SVar49.p_;
              piVar62[-3] = (int)layout;
              piVar62[-4] = (int)this;
                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */
              piVar62[-5] = 0xa326f;
              layout_gnu_property_section
                        ((Sized_relobj_file<64,_false> *)piVar62[-4],(Layout *)piVar62[-3],
                         piVar62[-2]);
              ppuVar57 = (undefined **)(i >> 5);
              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
              _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] =
                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                   _M_start.super__Bit_iterator_base._M_p[(int)ppuVar57] | 1 << ((byte)i & 0x1f);
              SVar49.p_ = (Shdr_data<64> *)i;
              uVar69 = i;
            }
            else {
              piVar62[-3] = iVar50;
              piVar62[-4] = (int)pbVar70;
              piVar62[-5] = 0xa24ed;
              iVar50 = strcmp((char *)piVar62[-4],(char *)piVar62[-3]);
              bVar29 = iVar50 == 0;
              if (!bVar29) goto LAB_000a2b98;
LAB_000a24fe:
              omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
              _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] =
                   omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                   _M_start.super__Bit_iterator_base._M_p[(uint)SVar49.p_ >> 5] |
                   1 << (bVar48 & 0x1f);
              if (local_124 == (Sized_relobj_file<64,_false> *)0x7) goto LAB_000a2bcb;
LAB_000a2522:
              bVar29 = (1 << (bVar48 & 0x1f) &
                       omit.super__Bvector_base<std::allocator<bool>_>._M_impl.
                       super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p
                       [(uint)SVar49.p_ >> 5]) != 0;
              ppuVar57 = (undefined **)CONCAT31(uVar23 >> 5,bVar29);
              if (!bVar29) {
                ppuVar57 = (undefined **)0x0;
                if (local_124 != (Sized_relobj_file<64,_false> *)0x11) goto LAB_000a2551;
                piVar62[-4] = (int)&omit;
                piVar62[-5] = local_148;
                piVar62[-6] = (int)local_144;
                piVar62[-7] = (int)local_160;
                piVar62[-8] = (int)pbVar70;
                piVar62[-9] = (int)SVar49.p_;
                piVar62[-10] = (int)layout;
                piVar62[-0xb] = (int)symtab;
                piVar62[-0xc] = (int)this;
                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */
                piVar62[-0xd] = 0xa3371;
                bVar29 = include_section_group
                                   ((Sized_relobj_file<64,_false> *)piVar62[-0xc],
                                    (Symbol_table *)piVar62[-0xb],(Layout *)piVar62[-10],piVar62[-9]
                                    ,(char *)piVar62[-8],(uchar *)piVar62[-7],(char *)piVar62[-6],
                                    piVar62[-5],(vector<bool,_std::allocator<bool>_> *)piVar62[-4]);
                SVar49.p_ = (Shdr_data<64> *)extraout_ECX_10;
                uVar69 = i;
                if (!bVar29) goto LAB_000a2c3a;
                ppuVar57 = (undefined **)0x0;
                pSVar51 = extraout_ECX_10;
                goto LAB_000a2583;
              }
LAB_000a2c18:
              pIVar64 = layout->incremental_inputs_;
              uVar69 = (uint)SVar49.p_;
              if (pIVar64 == (Incremental_inputs *)0x0) {
                if ((char)ppuVar57 == '\0') goto LAB_000a22b0;
              }
              else if ((char)ppuVar57 == '\0') goto LAB_000a259c;
            }
LAB_000a2c3a:
            i = uVar69;
            (this->super_Sized_relobj<64,_false>).super_Relobj.output_sections_.
            super__Vector_base<gold::Output_section*,_std::allocator<gold::Output_section*>_>.
            _M_impl._M_start[i] = (Output_section *)0x0;
            puVar18 = (this->super_Sized_relobj<64,_false>).section_offsets_.
                      super__Vector_base<long_long_unsigned_int,_std::allocator<long_long_unsigned_int>_>
                      ._M_impl._M_start;
            *(undefined4 *)(puVar18 + i) = 0xffffffff;
            *(undefined4 *)((int)puVar18 + i * 8 + 4) = 0xffffffff;
          }
LAB_000a23a1:
          uVar63 = i + 1;
          pSVar67 = local_134 + 1;
          i = uVar63;
          if (uVar6 <= uVar63) goto LAB_000a2740;
          shdr.p_ = pSVar67;
          uVar69 = pSVar67->sh_name;
          local_124 = (Sized_relobj_file<64,_false> *)local_134[1].sh_type;
          puVar59 = (undefined1 *)piVar62;
          local_134 = pSVar67;
        } while (uVar69 < local_148);
      }
      uVar6 = i;
      shdr.p_ = local_134;
      *(char **)(puVar59 + -0x10) = "bad section name offset for section %u: %lu";
      *(undefined4 *)(puVar59 + -0x14) = 0xa3657;
      uVar39 = gettext();
      *(uint *)(puVar59 + -4) = uVar69;
      *(uint *)(puVar59 + -8) = uVar6;
      *(undefined4 *)(puVar59 + -0xc) = uVar39;
      *(Sized_relobj_file<64,_false> **)(puVar59 + -0x10) = this;
      *(undefined4 *)(puVar59 + -0x14) = 0xa3665;
      Object::error(*(Object **)(puVar59 + -0x10),*(char **)(puVar59 + -0xc));
      piVar62 = (int *)puVar59;
    }
    if (debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl
        ._M_start != (pointer)0x0) {
      *(pointer *)((int)piVar62 + -0x10) =
           debug_types_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
           _M_impl._M_start;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28af;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
    if (debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
        _M_start != (pointer)0x0) {
      *(pointer *)((int)piVar62 + -0x10) =
           debug_info_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>.
           _M_impl._M_start;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28cb;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
    if (eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
        _M_start != (pointer)0x0) {
      *(pointer *)((int)piVar62 + -0x10) =
           eh_frame_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl
           ._M_start;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa28e7;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
    if (reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
        _M_start != (pointer)0x0) {
      *(pointer *)((int)piVar62 + -0x10) =
           reloc_sections.super__Vector_base<unsigned_int,_std::allocator<unsigned_int>_>._M_impl.
           _M_start;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa2903;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
    if (omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start.
        super__Bit_iterator_base._M_p != (_Bit_type *)0x0) {
      *(_Bit_type **)((int)piVar62 + -0x10) =
           omit.super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start
           .super__Bit_iterator_base._M_p;
      *(undefined4 *)((int)piVar62 + -0x14) = 0xa291f;
      operator_delete(*(void **)((int)piVar62 + -0x10));
    }
  }
  *(undefined4 **)((int)piVar62 + -0x10) = puVar31;
  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2938;
  operator_delete(*(void **)((int)piVar62 + -0x10));
  *(undefined4 **)((int)piVar62 + -0x10) = puVar30;
  *(undefined4 *)((int)piVar62 + -0x14) = 0xa2944;
  operator_delete(*(void **)((int)piVar62 + -0x10));
  return;
}


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

void MASKED(uint *******param_1,int param_2,int param_3,int *param_4)

{
  uint ******ppppppuVar1;
  uint *puVar2;
  byte bVar3;
  uint ***pppuVar4;
  int iVar5;
  code *pcVar6;
  char cVar7;
  undefined4 *puVar8;
  size_t sVar9;
  uint uVar10;
  int *piVar11;
  undefined4 uVar12;
  uint ******ppppppuVar13;
  uint ****ppppuVar14;
  uint *****pppppuVar15;
  undefined *puVar16;
  uint ******ppppppuVar17;
  uint *****pppppuVar18;
  uint *******extraout_ECX;
  int iVar19;
  uint *******extraout_ECX_00;
  uint ******ppppppuVar20;
  uint *******extraout_ECX_01;
  uint *******extraout_ECX_02;
  uint *******extraout_ECX_03;
  uint *******extraout_ECX_04;
  uint *******extraout_ECX_05;
  uint *******extraout_ECX_06;
  uint *******extraout_ECX_07;
  uint *******extraout_ECX_08;
  uint *******extraout_ECX_09;
  uint *******extraout_ECX_10;
  uint *******extraout_ECX_11;
  uint *******extraout_ECX_12;
  uint *******extraout_ECX_13;
  uint *******extraout_ECX_14;
  uint *******extraout_ECX_15;
  uint *******extraout_ECX_16;
  uint *******extraout_ECX_17;
  uint *******extraout_ECX_18;
  uint *******extraout_ECX_19;
  uint *******extraout_ECX_20;
  uint *******extraout_ECX_21;
  uint *******extraout_ECX_22;
  uint *******extraout_ECX_23;
  uint *******extraout_ECX_24;
  uint *******extraout_ECX_25;
  uint *******extraout_ECX_26;
  uint *******extraout_ECX_27;
  uint *******extraout_ECX_28;
  uint *******extraout_ECX_29;
  uint *******extraout_ECX_30;
  uint *******extraout_ECX_31;
  uint ******ppppppuVar21;
  uint *******pppppppuVar22;
  undefined1 *puVar23;
  undefined1 *puVar24;
  undefined1 *puVar26;
  uint *******pppppppuVar27;
  uint *******pppppppuVar28;
  uint *******pppppppuVar29;
  byte *pbVar30;
  byte *pbVar31;
  uint *******pppppppuVar32;
  bool bVar33;
  bool bVar34;
  bool bVar35;
  byte bVar36;
  undefined1 auStack_1ac [8];
  uint *******local_1a4;
  uint *******local_1a0;
  int local_19c;
  uint *******local_198;
  uint *******local_194;
  uint *******local_190;
  uint *******local_18c;
  uint ******local_188;
  uint *******local_184;
  uint ******local_180;
  uint *******local_17c;
  uint *******local_178;
  uint *******local_174;
  uint *******local_170;
  uint *******local_16c;
  uint local_168;
  uint ******local_164;
  uint ******local_160;
  undefined4 *local_15c;
  undefined4 *local_158;
  uint *******local_154;
  uint ******local_150;
  int local_14c;
  uint ******local_148;
  uint ******local_144;
  uint *******local_140;
  uint *******local_13c;
  char local_138;
  byte local_137;
  byte local_136;
  char local_135;
  uint *******local_134;
  uint *******local_130;
  uint *******local_12c;
  undefined4 local_128;
  uint *******local_124;
  uint *******local_120;
  int *local_11c;
  undefined4 local_118;
  int local_110;
  char local_10c [4];
  undefined4 local_108;
  uint *******local_100 [3];
  undefined1 local_f1;
  uint *******local_f0;
  uint *******local_ec;
  uint *******local_e8;
  uint ******local_e4;
  uint *******local_e0;
  uint *******local_dc;
  uint *******local_d8;
  int *local_d4;
  int *local_d0;
  int *local_cc;
  int *local_c8;
  int *local_c4;
  int *local_c0;
  int *local_bc;
  int *local_b8;
  int *local_b4;
  void *local_b0;
  undefined4 local_ac;
  void *local_a8;
  uint local_a4;
  byte *local_a0;
  uint *******local_9c;
  uint *******local_98;
  uint ******local_94 [4];
  uint *******local_84;
  uint *******local_80;
  uint ******local_7c [4];
  uint *******local_6c;
  undefined4 local_68;
  uint *******local_64;
  uint ******local_60;
  uint *******local_5c;
  uint ******local_58;
  uint ******local_54;
  uint ******local_50;
  uint ******local_4c;
  uint ******local_48;
  uint ******local_44;
  uint ******local_40;
  uint ******local_3c;
  uint ******local_38;
  uint ******local_34;
  uint ******local_30;
  uint ******local_2c;
  uint ******local_28;
  uint ******local_24;
  undefined1 *puVar25;
  
  bVar36 = 0;
  local_120 = (uint *******)&__DT_PLTGOT;
  local_13c = (uint *******)&DAT_00302378;
  if (*(int *)(DAT_00302378 + 0xc) == 0) {
    local_13c = (uint *******)&DAT_00302378;
    local_120 = (uint *******)&__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
    FUN_0005f0b0("../../gold/parameters.h",0x69,"target",DAT_00302378);
  }
  pppppuVar15 = *(uint ******)(DAT_00302378 + 8);
  local_198 = *(uint ********)(*(int *)(*(int *)(DAT_00302378 + 0xc) + 4) + 0x60);
  local_130 = (uint *******)param_1[10];
  pppppppuVar22 = (uint *******)&DAT_00302378;
  pppppppuVar29 = (uint *******)&__DT_PLTGOT;
  if (pppppuVar15 == (uint *****)0x0) goto LAB_000a34ee;
  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {
    if (pppppuVar15[0x164d] == (uint ****)0x0) {
      local_136 = *(byte *)(param_3 + 0x1ce);
      pppppppuVar22 = (uint *******)(uint)local_136;
      if (local_136 == 0) {
        if (local_130 == (uint *******)0x0) {
          return;
        }
        local_148 = (uint ******)param_4[2];
        local_160 = *(uint *******)(*param_4 + 8);
        local_164 = (uint ******)param_4[3];
        if (local_164 != (uint ******)0x0) {
          local_164 = (uint ******)local_164[2];
        }
        local_17c = (uint *******)param_4[4];
        local_180 = (uint ******)param_4[6];
        if (local_180 != (uint ******)0x0) {
          local_180 = (uint ******)local_180[2];
        }
        local_138 = '\0';
        local_135 = '\0';
        local_190 = (uint *******)0x0;
        local_188 = (uint ******)param_4[7];
        local_144 = *(uint *******)(param_4[1] + 8);
        local_136 = '\0';
        goto LAB_000a1e71;
      }
      local_190 = (uint *******)param_1[0x15];
      if (local_190 != (uint *******)0x0) goto LAB_000a1e0a;
      local_190 = (uint *******)0x0;
    }
    else {
      pppppppuVar22 = (uint *******)param_1[0x15];
      local_190 = pppppppuVar22;
      if (pppppppuVar22 != (uint *******)0x0) goto LAB_000a33a4;
    }
LAB_000a3448:
    if (param_4 == (int *)0x0) {
      local_13c = (uint *******)&DAT_00302378;
      local_120 = (uint *******)&__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
      FUN_0005f0b0("../../gold/object.cc",0x597,"do_layout",pppppppuVar22);
    }
    if (local_130 == (uint *******)0x0) {
      return;
    }
    local_13c = (uint *******)&DAT_00302378;
    local_120 = (uint *******)&__DT_PLTGOT;
    pppppppuVar22 = (uint *******)FUN_0017ebf0(0x20);
    local_190 = pppppppuVar22;
    FUN_00091c10(param_1,pppppppuVar22,param_4,(int)local_130 << 6);
    local_160 = *pppppppuVar22;
    param_1[0x15] = (uint ******)pppppppuVar22;
    local_148 = pppppppuVar22[2];
    local_164 = pppppppuVar22[3];
    local_17c = (uint *******)pppppppuVar22[4];
    local_180 = pppppppuVar22[6];
    pppppuVar15 = (*local_13c)[2];
    local_188 = pppppppuVar22[7];
    local_144 = pppppppuVar22[1];
    pppppppuVar22 = local_13c;
    pppppppuVar29 = local_120;
    if (pppppuVar15 == (uint *****)0x0) {
LAB_000a34ee:
      local_120 = pppppppuVar29;
      local_13c = pppppppuVar22;
                    /* WARNING: Subroutine does not return */
      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,pppppuVar15);
    }
    local_138 = '\x01';
    local_135 = '\0';
    local_136 = '\x01';
  }
  else {
    local_190 = (uint *******)param_1[0x15];
    pppppppuVar22 = param_1;
    if (local_190 == (uint *******)0x0) goto LAB_000a3448;
    if (*(char *)(*(int *)(param_2 + 0x158) + 0xc) == '\0') {
      local_13c = (uint *******)&DAT_00302378;
      local_120 = (uint *******)&__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
      FUN_0005f0b0("../../gold/object.cc",0x59d,"do_layout",local_190);
    }
    if (pppppuVar15[0x164d] != (uint ****)0x0) {
LAB_000a33a4:
      if (*(char *)(*(int *)(param_2 + 0x15c) + 0x50) == '\0') {
        local_13c = (uint *******)&DAT_00302378;
        local_120 = (uint *******)&__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
        FUN_0005f0b0("../../gold/object.cc",0x59f,"do_layout",pppppuVar15);
      }
    }
LAB_000a1e0a:
    if (local_130 == (uint *******)0x0) {
      return;
    }
    local_138 = '\x01';
    local_135 = '\x01';
    local_160 = *local_190;
    local_148 = local_190[2];
    local_136 = '\0';
    local_164 = local_190[3];
    local_17c = (uint *******)local_190[4];
    local_180 = local_190[6];
    local_188 = local_190[7];
    local_144 = local_190[1];
    local_13c = (uint *******)&DAT_00302378;
    local_120 = (uint *******)&__DT_PLTGOT;
  }
LAB_000a1e71:
  pppppppuVar29 = local_124;
  pppppppuVar22 = local_130;
  ppppuVar14 = pppppuVar15[0x164f];
  local_124 = (uint *******)((uint)local_124 & 0xffffff00);
  if (ppppuVar14 != (uint ****)0x0) {
    local_124._1_3_ = SUB43(pppppppuVar29,1);
    local_124 = (uint *******)CONCAT31(local_124._1_3_,*(char *)(ppppuVar14 + 0x18));
    if (*(char *)(ppppuVar14 + 0x18) != '\0') {
      local_124 = (uint *******)
                  (CONCAT31(local_124._1_3_,*(undefined1 *)((int)ppppuVar14 + 0x61)) ^ 1);
    }
  }
  if ((uint *******)0x3fffffff < local_130) {
                    /* WARNING: Subroutine does not return */
    FUN_001c5fe0();
  }
  local_14c = (int)local_130 * 4;
  local_158 = (undefined4 *)FUN_0017ebf0(local_14c);
  iVar19 = local_14c;
  puVar8 = local_158;
  if (pppppppuVar22 != (uint *******)0x0) {
    do {
      *puVar8 = 0;
      puVar8 = puVar8 + 1;
    } while (puVar8 != local_158 + (int)pppppppuVar22);
  }
                    /* try { // try from 000a1efd to 000a1f01 has its CatchHandler @ 000a4675 */
  local_15c = (undefined4 *)FUN_0017ebf0(local_14c);
  puVar24 = auStack_1ac;
  puVar26 = auStack_1ac;
  pppppppuVar22 = (uint *******)(local_160 + 0x10);
  puVar8 = local_15c;
  local_134 = pppppppuVar22;
  if (local_130 != (uint *******)0x0) {
    do {
      *puVar8 = 0;
      puVar8 = puVar8 + 1;
    } while (puVar8 != (undefined4 *)((int)local_15c + iVar19));
    if (local_130 != (uint *******)0x1) {
      pppppppuVar29 = (uint *******)0x1;
      local_140 = (uint *******)0x0;
      local_16c = local_120 + -0x3748f;
      local_154 = param_1 + 0x24;
      do {
        while( true ) {
          if ((char)local_124 != '\0') {
            local_140 = (uint *******)((int)local_140 + (uint)(((uint)pppppppuVar22[2] & 2) != 0));
          }
          ppppppuVar21 = pppppppuVar22[1];
          if ((ppppppuVar21 == (uint ******)0x9) || (ppppppuVar21 == (uint ******)0x4)) break;
LAB_000a1f88:
          pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);
          pppppppuVar22 = pppppppuVar22 + 0x10;
          if (pppppppuVar29 == local_130) goto LAB_000a2028;
        }
        local_12c = (uint *******)pppppppuVar22[0xb];
        if ((uint *******)0xfeff < local_12c) {
                    /* try { // try from 000a2959 to 000a29a6 has its CatchHandler @ 000a46c7 */
          FUN_0004dee0(local_154);
          local_12c = (uint *******)((int)local_12c + (int)param_1[0x29]);
        }
        if ((local_12c == (uint *******)0x0) || (local_130 <= local_12c)) {
          uVar12 = gettext(local_16c);
          FUN_00091980(param_1,uVar12,pppppppuVar29,local_12c);
          goto LAB_000a1f88;
        }
        piVar11 = local_158 + (int)local_12c;
        if (*piVar11 == 0) {
          *piVar11 = (int)pppppppuVar29;
          local_15c[(int)local_12c] = ppppppuVar21;
          goto LAB_000a1f88;
        }
        *piVar11 = -1;
        pppppppuVar29 = (uint *******)((int)pppppppuVar29 + 1);
        pppppppuVar22 = pppppppuVar22 + 0x10;
      } while (pppppppuVar29 != local_130);
      goto LAB_000a2028;
    }
  }
  local_140 = (uint *******)0x0;
LAB_000a2028:
  if (local_135 == '\0') {
    pppppppuVar22 = (uint *******)((int)param_1[0xf] - (int)param_1[0xe] >> 2);
    if (pppppppuVar22 < local_130) {
      FUN_000709d0(param_1 + 0xe,(int)local_130 - (int)pppppppuVar22);
    }
    else if ((local_130 < pppppppuVar22) &&
            (ppppppuVar21 = (uint ******)((int)param_1[0xe] + local_14c),
            param_1[0xf] != ppppppuVar21)) {
      param_1[0xf] = ppppppuVar21;
    }
    pppppppuVar22 = (uint *******)((int)param_1[0x22] - (int)param_1[0x21] >> 3);
    if (pppppppuVar22 < local_130) {
                    /* try { // try from 000a41b0 to 000a41b4 has its CatchHandler @ 000a46c7 */
      FUN_0004dfd0(param_1 + 0x21,(int)local_130 - (int)pppppppuVar22);
    }
    else if ((local_130 < pppppppuVar22) &&
            (ppppppuVar21 = param_1[0x21] + (int)local_130 * 2, param_1[0x22] != ppppppuVar21)) {
      param_1[0x22] = ppppppuVar21;
    }
  }
  if (param_1[7] == (uint ******)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a4488 to 000a448c has its CatchHandler @ 000a46c7 */
    FUN_000917c0();
  }
                    /* try { // try from 000a204d to 000a2051 has its CatchHandler @ 000a46c7 */
  local_137 = FUN_0005cf90(param_1[7]);
  if (local_137 == 0) {
    if (local_140 != (uint *******)0x0) {
      if ((*local_13c)[2] == (uint *****)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43be to 000a43c2 has its CatchHandler @ 000a46c7 */
        FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);
      }
      ppppuVar14 = (*local_13c)[2][0x164f];
      local_ec = param_1;
      pppuVar4 = ppppuVar14[8];
      if (pppuVar4 == ppppuVar14[9]) {
                    /* try { // try from 000a424a to 000a424e has its CatchHandler @ 000a46c7 */
        FUN_00097230(ppppuVar14 + 7,pppuVar4,&local_ec);
      }
      else {
        *pppuVar4 = (uint **)param_1;
        ppppuVar14[8] = pppuVar4 + 1;
      }
      if ((uint *******)0x28f5c28 < local_140) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a435c to 000a4360 has its CatchHandler @ 000a46c7 */
        FUN_001c6190((byte *)((int)local_120 + -0xe7a7d));
      }
      ppppppuVar21 = param_1[0x48];
      local_12c = (uint *******)param_1[0x4a];
      if ((uint *******)(((int)local_12c - (int)ppppppuVar21 >> 2) * -0x3d70a3d7) < local_140) {
        ppppppuVar17 = param_1[0x49];
        local_124 = (uint *******)((int)ppppppuVar17 - (int)ppppppuVar21);
        local_140 = (uint *******)((int)local_140 * 100);
                    /* try { // try from 000a378c to 000a38ae has its CatchHandler @ 000a46c7 */
        local_12c = (uint *******)FUN_0017ebf0(local_140);
        if (ppppppuVar21 != ppppppuVar17) {
          ppppppuVar13 = ppppppuVar21 + 2;
          pppppppuVar22 = local_12c;
          do {
            *pppppppuVar22 = (uint ******)(pppppppuVar22 + 2);
            if ((uint ******)ppppppuVar13[-2] == ppppppuVar13) {
              pppppppuVar22[2] = (uint ******)*ppppppuVar13;
              pppppppuVar22[3] = (uint ******)ppppppuVar13[1];
              pppppppuVar22[4] = (uint ******)ppppppuVar13[2];
              pppppppuVar22[5] = (uint ******)ppppppuVar13[3];
            }
            else {
              *pppppppuVar22 = (uint ******)ppppppuVar13[-2];
              pppppppuVar22[2] = (uint ******)*ppppppuVar13;
            }
            pppppppuVar22[1] = (uint ******)ppppppuVar13[-1];
            ppppppuVar13[-2] = (uint *****)ppppppuVar13;
            ppppppuVar20 = ppppppuVar13 + 0x19;
            ppppppuVar13[-1] = (uint *****)0x0;
            *(undefined1 *)ppppppuVar13 = 0;
            pppppppuVar22[6] = (uint ******)ppppppuVar13[4];
            pppppppuVar22[7] = (uint ******)ppppppuVar13[5];
            pppppppuVar22[8] = (uint ******)ppppppuVar13[6];
            pppppppuVar22[9] = (uint ******)ppppppuVar13[7];
            pppppppuVar22[10] = (uint ******)ppppppuVar13[8];
            pppppppuVar22[0xb] = (uint ******)ppppppuVar13[9];
            pppppppuVar22[0xc] = (uint ******)ppppppuVar13[10];
            pppppppuVar22[0xd] = (uint ******)ppppppuVar13[0xb];
            pppppppuVar22[0xe] = (uint ******)ppppppuVar13[0xc];
            pppppppuVar22[0xf] = (uint ******)ppppppuVar13[0xd];
            pppppppuVar22[0x10] = (uint ******)ppppppuVar13[0xe];
            pppppppuVar22[0x11] = (uint ******)ppppppuVar13[0xf];
            pppppppuVar22[0x12] = (uint ******)ppppppuVar13[0x10];
            pppppppuVar22[0x13] = (uint ******)ppppppuVar13[0x11];
            pppppppuVar22[0x14] = (uint ******)ppppppuVar13[0x12];
            pppppppuVar22[0x15] = (uint ******)ppppppuVar13[0x13];
            pppppppuVar22[0x16] = (uint ******)ppppppuVar13[0x14];
            pppppppuVar22[0x17] = (uint ******)ppppppuVar13[0x15];
            pppppppuVar22[0x18] = (uint ******)ppppppuVar13[0x16];
            ppppppuVar13 = ppppppuVar20;
            pppppppuVar22 = pppppppuVar22 + 0x19;
          } while (ppppppuVar21 +
                   (((uint)((int)ppppppuVar17 + (-100 - (int)ppppppuVar21)) >> 2) * 0x28f5c29 &
                   0x3fffffff) * 0x19 + 0x1b != ppppppuVar20);
        }
        ppppppuVar21 = param_1[0x49];
        ppppppuVar17 = param_1[0x48];
        if (ppppppuVar21 != ppppppuVar17) {
          do {
            if ((uint ******)*ppppppuVar17 != ppppppuVar17 + 2) {
              FUN_001807a0(*ppppppuVar17);
            }
            ppppppuVar17 = ppppppuVar17 + 0x19;
          } while (ppppppuVar21 != ppppppuVar17);
          ppppppuVar17 = param_1[0x48];
        }
        if (ppppppuVar17 != (uint ******)0x0) {
          FUN_001807a0(ppppppuVar17);
        }
        param_1[0x48] = (uint ******)local_12c;
        param_1[0x49] = (uint ******)((int)local_124 + (int)local_12c);
        param_1[0x4a] = (uint ******)((int)local_140 + (int)local_12c);
      }
      *(byte *)((int)param_1 + 0x11d) = 1;
    }
    pppppppuVar29 = local_130;
    local_b0 = (void *)0x0;
    local_ac = 0;
    local_a8 = (void *)0x0;
    local_a4 = 0;
    local_a0 = (byte *)0x0;
    pppppppuVar27 = (uint *******)(((uint)((int)local_130 + 0x1fU) >> 5) * 4);
                    /* try { // try from 000a213c to 000a2140 has its CatchHandler @ 000a46b2 */
    local_b0 = (void *)FUN_0017ebf0(pppppppuVar27);
    pppppppuVar22 = local_120;
    local_a0 = (byte *)((int)local_b0 + (int)pppppppuVar27);
    local_a4 = (uint)pppppppuVar29 & 0x1f;
    local_a8 = (void *)((int)local_b0 + ((int)pppppppuVar29 >> 5) * 4);
    local_ac = 0;
    memset(local_b0,0,(size_t)pppppppuVar27);
    pppppuVar15 = (*local_13c)[2];
    if (pppppuVar15 == (uint *****)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a4412 to 000a4416 has its CatchHandler @ 000a4664 */
      FUN_0005f0b0(local_120 + -0x385a4,0x5c,local_120 + -0x371c1,0);
    }
    bVar3 = *(byte *)((int)pppppuVar15 + 0x318d);
    pppppppuVar29 = (uint *******)(uint)bVar3;
    local_140 = (uint *******)CONCAT31(local_140._1_3_,bVar3);
    if (bVar3 == 0) {
      bVar3 = *(byte *)((int)pppppuVar15 + 0x3095);
    }
    local_14c = CONCAT31(local_14c._1_3_,bVar3);
    local_e0 = (uint *******)0x0;
    local_dc = (uint *******)0x0;
    local_d8 = (uint *******)0x0;
    local_d4 = (int *)0x0;
    local_d0 = (int *)0x0;
    local_cc = (int *)0x0;
    local_c8 = (int *)0x0;
    local_c4 = (int *)0x0;
    local_c0 = (int *)0x0;
    local_bc = (int *)0x0;
    local_b8 = (int *)0x0;
    local_b4 = (int *)0x0;
    local_f0 = (uint *******)0x1;
    if (local_130 < (uint *******)0x2) {
      local_16c = (uint *******)0x0;
      local_168 = 0;
      pppppppuVar28 = local_134;
LAB_000a2740:
      local_134 = pppppppuVar28;
      if (local_135 == '\0') {
        *(uint ********)(puVar24 + -0xc) = param_1;
        *(int *)(puVar24 + -0x10) = param_3;
        *(undefined4 *)(puVar24 + -0x14) = 0xa275f;
        FUN_0007bc30();
        uVar10 = (uint)local_137;
        *(uint ********)(puVar24 + -0x10) = param_1;
        *(uint *)(puVar24 + -0x14) = local_168;
        *(uint ********)(puVar24 + -0x18) = local_16c;
        *(uint *)(puVar24 + -0x1c) = uVar10;
        *(int *)(puVar24 + -0x20) = param_3;
        *(undefined4 *)(puVar24 + -0x24) = 0xa277f;
        FUN_0007bb30();
        pppppppuVar29 = extraout_ECX_02;
      }
      pppppppuVar22 = local_120;
      if (local_136 == '\0') {
        if (local_d0 != local_d4) {
          local_178 = (uint *******)&local_84;
          piVar11 = local_d4;
          do {
            iVar19 = *piVar11;
            *(undefined4 *)(puVar24 + -0xc) = local_15c[iVar19];
            pppppppuVar22 = (uint *******)(local_160 + iVar19 * 0x10);
            *(undefined4 *)(puVar24 + -0x10) = local_158[iVar19];
            *(uint ********)(puVar24 + -0x14) = local_178;
            *(int *)(puVar24 + -0x18) = iVar19;
            *(uint *******)(puVar24 + -0x1c) = local_188;
            *(uint *******)(puVar24 + -0x20) = local_180;
            *(uint ********)(puVar24 + -0x24) = local_17c;
            *(uint *******)(puVar24 + -0x28) = local_164;
            *(int *)(puVar24 + -0x2c) = param_3;
            *(uint ********)(puVar24 + -0x30) = param_1;
                    /* try { // try from 000a374a to 000a374e has its CatchHandler @ 000a46b9 */
            local_84 = pppppppuVar22;
            *(undefined4 *)(puVar24 + -0x34) = 0xa374f;
            FUN_00096690();
            piVar11 = piVar11 + 1;
            pppppppuVar29 = extraout_ECX_13;
          } while (local_d0 != piVar11);
        }
      }
      else if (local_d0 != local_d4) {
        *(uint ********)(puVar24 + -4) = pppppppuVar27;
        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;
        *(undefined4 *)(puVar24 + -0xc) = 0x751;
        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;
                    /* WARNING: Subroutine does not return */
        *(undefined4 *)(puVar24 + -0x14) = 0xa44e7;
        FUN_0005f0b0();
      }
      if ((char)local_14c != '\0') {
        ppppppuVar21 = param_1[10];
        *(undefined4 *)(puVar24 + -0x10) = 0xc;
                    /* try { // try from 000a41ce to 000a41d2 has its CatchHandler @ 000a46b9 */
        *(undefined4 *)(puVar24 + -0x14) = 0xa41d3;
        ppppppuVar17 = (uint ******)FUN_0017ebf0();
        *ppppppuVar17 = (uint *****)0x0;
        ppppppuVar17[1] = (uint *****)0x0;
        ppppppuVar17[2] = (uint *****)0x0;
        if (ppppppuVar21 == (uint ******)0x0) {
          pppppuVar15 = (uint *****)0x0;
          pppppppuVar29 = extraout_ECX_27;
        }
        else {
          if ((uint ******)0x3fffffff < ppppppuVar21) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a452b to 000a452f has its CatchHandler @ 000a466f */
            *(undefined1 **)(puVar24 + -4) = &LAB_000a4530;
            FUN_001c5fe0();
          }
          *(int *)(puVar24 + -0x10) = (int)ppppppuVar21 * 4;
                    /* try { // try from 000a420d to 000a4211 has its CatchHandler @ 000a466f */
          *(undefined4 *)(puVar24 + -0x14) = 0xa4212;
          pppppuVar18 = (uint *****)FUN_0017ebf0();
          pppppuVar15 = pppppuVar18 + (int)ppppppuVar21;
          *ppppppuVar17 = pppppuVar18;
          ppppppuVar17[2] = pppppuVar15;
          do {
            *pppppuVar18 = (uint ****)0x0;
            pppppuVar18 = pppppuVar18 + 1;
            pppppppuVar29 = extraout_ECX_28;
          } while (pppppuVar15 != pppppuVar18);
        }
        ppppppuVar17[1] = pppppuVar15;
        param_1[0x11] = ppppppuVar17;
      }
      pppppppuVar22 = local_120;
      if (local_138 == '\0') {
        if (local_e0 != local_dc) {
          local_12c = local_e0;
          local_134 = param_1 + 0x24;
          local_13c = (uint *******)&local_9c;
          do {
            pppppppuVar22 = (uint *******)*local_12c;
            pppppppuVar28 = (uint *******)(local_160 + (int)pppppppuVar22 * 0x10);
            pppppppuVar27 = (uint *******)pppppppuVar28[0xb];
            local_9c = pppppppuVar28;
            if ((uint *******)0xfeff < pppppppuVar27) {
              *(uint ********)(puVar24 + -0x10) = local_134;
              *(undefined4 *)(puVar24 + -0x14) = 0xa3ae3;
              FUN_0004dee0();
              pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (int)param_1[0x29]);
              pppppppuVar29 = extraout_ECX_17;
            }
            pppppppuVar32 = local_120;
            if (pppppppuVar27 < local_130) {
              local_124 = (uint *******)param_1[0xe][(int)pppppppuVar27];
              if (local_124 == (uint *******)0x2) {
                if (local_135 == '\0') {
                  ppppppuVar21 = (uint ******)((int)local_144 + (int)*local_9c);
                  local_140 = (uint *******)local_9c[1];
                  local_194 = local_7c;
                  local_84 = local_7c;
                  puVar16 = (undefined *)0xffffffff;
                  local_124 = param_1 + 0x4b;
                  if (ppppppuVar21 != (uint ******)0x0) {
                    local_148 = ppppppuVar21;
                    *(uint *******)(puVar24 + -0x10) = ppppppuVar21;
                    *(undefined4 *)(puVar24 + -0x14) = 0xa3b4f;
                    sVar9 = strlen(*(char **)(puVar24 + -0x10));
                    puVar16 = (undefined *)(sVar9 + (int)local_148);
                    ppppppuVar21 = local_148;
                  }
                  *(undefined4 *)(puVar24 + -4) = 0;
                  *(undefined **)(puVar24 + -8) = puVar16;
                  *(uint *******)(puVar24 + -0xc) = ppppppuVar21;
                  *(uint *********)(puVar24 + -0x10) = &local_84;
                  *(undefined4 *)(puVar24 + -0x14) = 0xa3b67;
                  FUN_0004cf80();
                  local_68 = 0;
                  local_64 = (uint *******)0x0;
                  local_60 = *pppppppuVar28;
                  local_58 = pppppppuVar28[2];
                  local_54 = pppppppuVar28[3];
                  local_50 = pppppppuVar28[4];
                  local_4c = pppppppuVar28[5];
                  local_48 = pppppppuVar28[6];
                  local_44 = pppppppuVar28[7];
                  local_40 = pppppppuVar28[8];
                  local_3c = pppppppuVar28[9];
                  local_38 = pppppppuVar28[10];
                  local_34 = pppppppuVar28[0xb];
                  local_30 = pppppppuVar28[0xc];
                  local_2c = pppppppuVar28[0xd];
                  local_28 = pppppppuVar28[0xe];
                  ppppppuVar21 = pppppppuVar28[0xf];
                  local_6c = pppppppuVar22;
                  *(uint *********)(puVar24 + -0xc) = &local_84;
                  *(uint ********)(puVar24 + -0x10) = local_124;
                  local_5c = local_140;
                    /* try { // try from 000a3be9 to 000a3bed has its CatchHandler @ 000a4534 */
                  local_24 = ppppppuVar21;
                  *(undefined4 *)(puVar24 + -0x14) = 0xa3bee;
                  FUN_000a10f0();
                  pppppppuVar29 = extraout_ECX_18;
                  if (local_84 != local_194) {
                    *(uint ********)(puVar24 + -0x10) = local_84;
                    *(undefined4 *)(puVar24 + -0x14) = 0xa3c0b;
                    FUN_001807a0();
                    pppppppuVar29 = extraout_ECX_19;
                  }
                  param_1[0xe][(int)pppppppuVar22] = (uint *****)0x2;
                  ppppppuVar21 = param_1[0x21];
                  ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;
                  ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;
                }
              }
              else if (local_124 == (uint *******)0x0) {
                param_1[0xe][(int)pppppppuVar22] = (uint *****)0x0;
                ppppppuVar21 = param_1[0x21];
                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;
                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;
              }
              else {
                *(undefined4 *)(puVar24 + -0x10) = 0x14;
                    /* try { // try from 000a3a0d to 000a3b66 has its CatchHandler @ 000a46b9 */
                *(undefined4 *)(puVar24 + -0x14) = 0xa3a12;
                ppppuVar14 = (uint ****)FUN_0017ebf0();
                *ppppuVar14 = (uint ***)0x0;
                ppppuVar14[1] = (uint ***)0x0;
                ppppuVar14[2] = (uint ***)0x0;
                ppppuVar14[3] = (uint ***)0x0;
                ppppuVar14[4] = (uint ***)0x0;
                if (param_1[10] <= pppppppuVar22) {
                  *(uint ********)(puVar24 + -4) = pppppppuVar32;
                  pppppppuVar22 = local_120;
                  *(uint ********)(puVar24 + -8) = local_120 + -0x37296;
                  *(undefined4 *)(puVar24 + -0xc) = 0x541;
                  *(byte **)(puVar24 + -0x10) = (byte *)((int)pppppppuVar22 + -0xe7fe6);
                    /* WARNING: Subroutine does not return */
                  *(undefined4 *)(puVar24 + -0x14) = 0xa44c8;
                  FUN_0005f0b0();
                }
                (*param_1[0x11])[(int)pppppppuVar22] = ppppuVar14;
                *(uint *****)(puVar24 + -0xc) = ppppuVar14;
                *(uint ********)(puVar24 + -0x10) = local_124;
                *(uint ********)(puVar24 + -0x14) = local_13c;
                *(uint ********)(puVar24 + -0x18) = pppppppuVar22;
                *(uint ********)(puVar24 + -0x1c) = param_1;
                *(int *)(puVar24 + -0x20) = param_3;
                *(undefined4 *)(puVar24 + -0x24) = 0xa3a70;
                pppppuVar15 = (uint *****)FUN_0008a810();
                param_1[0xe][(int)pppppppuVar22] = pppppuVar15;
                ppppppuVar21 = param_1[0x21];
                ppppppuVar21[(int)pppppppuVar22 * 2] = (uint *****)0xffffffff;
                ppppppuVar21[(int)pppppppuVar22 * 2 + 1] = (uint *****)0xffffffff;
                pppppppuVar29 = extraout_ECX_16;
              }
            }
            local_12c = local_12c + 1;
          } while (local_dc != local_12c);
        }
      }
      else if (local_e0 != local_dc) {
        *(uint ********)(puVar24 + -4) = pppppppuVar29;
        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;
        *(undefined4 *)(puVar24 + -0xc) = 0x76c;
        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;
                    /* WARNING: Subroutine does not return */
        *(undefined4 *)(puVar24 + -0x14) = 0xa4525;
        FUN_0005f0b0();
      }
      pppppppuVar22 = local_120;
      if (local_136 == '\0') {
        if (local_c8 != local_c4) {
          local_128 = 0;
          local_12c = local_17c;
          piVar11 = local_c8;
          do {
            iVar19 = *piVar11;
            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];
            *(undefined4 *)(puVar24 + -0x14) = local_158[iVar19];
            *(int *)(puVar24 + -0x18) = iVar19;
            *(undefined4 *)(puVar24 + -0x1c) = local_128;
            *(uint ********)(puVar24 + -0x20) = local_12c;
            *(uint *******)(puVar24 + -0x24) = local_164;
            *(uint ********)(puVar24 + -0x28) = param_1;
            *(undefined4 *)(puVar24 + -0x2c) = 0;
            *(int *)(puVar24 + -0x30) = param_3;
                    /* try { // try from 000a3cc0 to 000a3ea5 has its CatchHandler @ 000a46b9 */
            *(undefined4 *)(puVar24 + -0x34) = 0xa3cc5;
            FUN_0008e680();
            piVar11 = piVar11 + 1;
          } while (local_c4 != piVar11);
        }
        if (local_b8 != local_bc) {
          local_128 = 0;
          local_12c = local_17c;
          piVar11 = local_bc;
          do {
            puVar8 = local_158;
            iVar19 = *piVar11;
            *(undefined4 *)(puVar24 + -0x10) = local_15c[iVar19];
            *(undefined4 *)(puVar24 + -0x14) = puVar8[iVar19];
            *(int *)(puVar24 + -0x18) = iVar19;
            *(undefined4 *)(puVar24 + -0x1c) = local_128;
            *(uint ********)(puVar24 + -0x20) = local_12c;
            *(uint *******)(puVar24 + -0x24) = local_164;
            *(uint ********)(puVar24 + -0x28) = param_1;
            *(undefined4 *)(puVar24 + -0x2c) = 1;
            *(int *)(puVar24 + -0x30) = param_3;
            *(undefined4 *)(puVar24 + -0x34) = 0xa3d3d;
            FUN_0008e680();
            piVar11 = piVar11 + 1;
          } while (local_b8 != piVar11);
        }
      }
      else if ((local_c8 != local_c4) || (local_b8 != local_bc)) {
        *(uint ********)(puVar24 + -4) = pppppppuVar29;
        *(uint ********)(puVar24 + -8) = pppppppuVar22 + -0x373b3;
        *(undefined4 *)(puVar24 + -0xc) = 0x7a0;
        *(uint ********)(puVar24 + -0x10) = pppppppuVar22 + -0x375d2;
                    /* WARNING: Subroutine does not return */
        *(undefined4 *)(puVar24 + -0x14) = 0xa4506;
        FUN_0005f0b0();
      }
      if (local_135 == '\0') {
        iVar19 = *param_4;
        if (iVar19 != 0) {
          *(int *)(puVar24 + -0x10) = iVar19;
          *(undefined4 *)(puVar24 + -0x14) = 0xa3d72;
          FUN_0005cea0();
          *(undefined4 *)(puVar24 + -0xc) = 0xc;
          *(int *)(puVar24 + -0x10) = iVar19;
          *(undefined4 *)(puVar24 + -0x14) = 0xa3d7c;
          FUN_00180780();
        }
        iVar19 = param_4[1];
        *param_4 = 0;
        if (iVar19 != 0) {
          *(int *)(puVar24 + -0x10) = iVar19;
          *(undefined4 *)(puVar24 + -0x14) = 0xa3da0;
          FUN_0005cea0();
          *(undefined4 *)(puVar24 + -0xc) = 0xc;
          *(int *)(puVar24 + -0x10) = iVar19;
          *(undefined4 *)(puVar24 + -0x14) = 0xa3daa;
          FUN_00180780();
        }
        param_4[1] = 0;
      }
      else {
        if (*local_190 != (uint ******)0x0) {
          *(uint *******)(puVar24 + -0x10) = *local_190;
          *(undefined4 *)(puVar24 + -0x14) = 0xa282c;
          FUN_00180740();
        }
        if (local_190[1] != (uint ******)0x0) {
          *(uint *******)(puVar24 + -0x10) = local_190[1];
          *(undefined4 *)(puVar24 + -0x14) = 0xa284b;
          FUN_00180740();
        }
        if (local_190[3] != (uint ******)0x0) {
          *(uint *******)(puVar24 + -0x10) = local_190[3];
          *(undefined4 *)(puVar24 + -0x14) = 0xa286a;
          FUN_00180740();
        }
        if (local_190[6] != (uint ******)0x0) {
          *(uint *******)(puVar24 + -0x10) = local_190[6];
          *(undefined4 *)(puVar24 + -0x14) = 0xa2889;
          FUN_00180740();
        }
        param_1[0x15] = (uint ******)0x0;
      }
    }
    else {
      local_ec = local_134;
      ppppppuVar21 = (uint ******)local_160[0x10];
      local_124 = (uint *******)local_160[0x11];
      if (ppppppuVar21 < local_148) {
        local_16c = (uint *******)0x0;
        local_168 = 0;
        local_1a0 = local_120 + 0x122;
        local_1a4 = local_120 + 0x122;
        puVar26 = auStack_1ac;
        do {
          local_12c = (uint *******)((int)ppppppuVar21 + (int)local_144);
          local_ec = local_134;
          if (local_135 == '\0') {
            *(int *)(puVar26 + -4) = param_2;
            *(uint ********)(puVar26 + -8) = local_f0;
            *(uint ********)(puVar26 + -0xc) = local_12c;
            *(uint ********)(puVar26 + -0x10) = param_1;
            *(undefined4 *)(puVar26 + -0x14) = 0xa2406;
            cVar7 = FUN_000925b0();
            bVar33 = cVar7 == '\0';
            bVar35 = cVar7 == '\x01';
            if (bVar35) {
              bVar33 = false;
              bVar35 = (char)local_140 == '\0';
              if (bVar35) {
                if ((*local_13c)[2] == (uint *****)0x0) {
                  *(undefined4 *)(puVar26 + -4) = 0;
                  *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;
                  *(undefined4 *)(puVar26 + -0xc) = 0x5c;
                  *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a442e to 000a444e has its CatchHandler @ 000a46b9 */
                  *(undefined4 *)(puVar26 + -0x14) = 0xa4433;
                  FUN_0005f0b0();
                }
                bVar33 = false;
                bVar35 = *(char *)((int)(*local_13c)[2] + 0x1a25) == '\0';
                if (bVar35) {
                  puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);
                  bVar33 = false;
                  *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);
                  bVar35 = *puVar2 == 0;
                }
              }
            }
            iVar19 = 0x10;
            pppppppuVar22 = local_12c;
            pbVar31 = (byte *)((int)local_120 + -0xdee8f);
            do {
              pbVar30 = pbVar31;
              if (iVar19 == 0) break;
              iVar19 = iVar19 + -1;
              pbVar30 = pbVar31 + (uint)bVar36 * -2 + 1;
              bVar33 = *(byte *)pppppppuVar22 < *pbVar31;
              bVar35 = *(byte *)pppppppuVar22 == *pbVar31;
              pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);
              pbVar31 = pbVar30;
            } while (bVar35);
            if ((!bVar33 && !bVar35) == bVar33) {
              local_137 = 1;
              local_16c = (uint *******)((uint)local_ec[2] | (uint)local_16c);
              local_168 = (uint)local_ec[3] | local_168;
              puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);
              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);
            }
            *(uint ********)(puVar26 + -0xc) = local_12c;
            *(uint ********)(puVar26 + -0x10) = param_1;
            *(undefined4 *)(puVar26 + -0x14) = 0xa2497;
            cVar7 = FUN_00091ac0();
            ppppppuVar21 = *local_13c;
            if ((cVar7 == '\x01') && ((char)local_140 == '\0')) {
              pppppuVar15 = ppppppuVar21[2];
              if (pppppuVar15 == (uint *****)0x0) {
                *(byte **)(puVar26 + -4) = pbVar30;
                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;
                *(undefined4 *)(puVar26 + -0xc) = 0x5c;
                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                *(undefined4 *)(puVar26 + -0x14) = 0xa444f;
                FUN_0005f0b0();
              }
              if (*(char *)((int)pppppuVar15 + 0x1a25) == '\0') {
                puVar2 = (uint *)((int)local_b0 + ((uint)local_f0 >> 5) * 4);
                *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);
              }
            }
            pppppuVar15 = ppppppuVar21[3];
            if (pppppuVar15 == (uint *****)0x0) {
              *(uint ********)(puVar26 + -8) = local_120 + -0x371cf;
              *(undefined4 *)(puVar26 + -0xc) = 0x69;
              *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
              *(undefined4 *)(puVar26 + -0x14) = 0xa4314;
              FUN_0005f0b0();
            }
            pppuVar4 = pppppuVar15[1][0x14];
            bVar33 = pppuVar4 == (uint ***)0x0;
            pppppppuVar29 = local_f0;
            if (bVar33) {
LAB_000a2b98:
              bVar35 = false;
              iVar19 = 0x10;
              pppppppuVar22 = local_12c;
              pbVar31 = (byte *)((int)local_120 + -0xdd173);
              do {
                if (iVar19 == 0) break;
                iVar19 = iVar19 + -1;
                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;
                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;
                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);
                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
              } while (bVar33);
              if ((!bVar35 && !bVar33) == bVar35) goto LAB_000a24fe;
              bVar33 = local_124 == (uint *******)0x7;
              if (!bVar33) goto LAB_000a2522;
LAB_000a2bcb:
              bVar35 = local_124 < (uint *******)0x7;
              iVar19 = 0x13;
              pppppppuVar22 = local_12c;
              pppppppuVar27 = local_120 + -0x37b91;
              do {
                if (iVar19 == 0) break;
                iVar19 = iVar19 + -1;
                bVar35 = *(byte *)pppppppuVar22 < *(byte *)pppppppuVar27;
                bVar33 = *(byte *)pppppppuVar22 == *(byte *)pppppppuVar27;
                pppppppuVar22 = (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);
                pppppppuVar27 = (uint *******)((int)pppppppuVar27 + (uint)bVar36 * -2 + 1);
              } while (bVar33);
              if ((!bVar35 && !bVar33) != bVar35) {
                bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &
                         *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;
                pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);
                pppppppuVar27 = pppppppuVar29;
                if (bVar33) goto LAB_000a2c18;
LAB_000a2551:
                bVar33 = false;
                bVar35 = (*(byte *)((int)local_ec + 9) & 2) == 0;
                pppppppuVar29 = pppppppuVar27;
                if (bVar35) {
                  pppppppuVar29 = (uint *******)0xd;
                  pppppppuVar28 = local_12c;
                  pbVar31 = (byte *)((int)local_120 + -0xdd163);
                  do {
                    if (pppppppuVar29 == (uint *******)0x0) break;
                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;
                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;
                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                  } while (bVar35);
                  if ((!bVar33 && !bVar35) == bVar33) {
                    *(uint *********)(puVar26 + -0x10) = &local_ec;
                    *(uint ********)(puVar26 + -0x14) = local_12c;
                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;
                    *(int *)(puVar26 + -0x1c) = param_3;
                    *(uint ********)(puVar26 + -0x20) = param_1;
                    /* try { // try from 000a3527 to 000a3664 has its CatchHandler @ 000a46b9 */
                    *(undefined4 *)(puVar26 + -0x24) = 0xa352c;
                    cVar7 = FUN_0009cac0();
                    pppppppuVar29 = extraout_ECX_11;
                    pppppppuVar27 = local_f0;
                    if (cVar7 == '\0') goto LAB_000a2c3a;
                  }
                }
LAB_000a2583:
                iVar19 = *(int *)(param_3 + 0x1d0);
                if ((iVar19 == 0) || ((char)pppppppuVar22 != '\0')) goto LAB_000a22b0;
LAB_000a259c:
                pppppppuVar22 = local_120;
                *(uint ********)(puVar26 + -0x10) = local_124;
                *(undefined4 *)(puVar26 + -0x14) = 0xa25b0;
                cVar7 = FUN_00066600();
                pppppppuVar27 = local_120;
                pppppppuVar29 = extraout_ECX_00;
                if (cVar7 != '\0') {
                  local_150 = local_ec[9];
                  local_154 = (uint *******)local_ec[8];
                  ppppppuVar21 = param_1[0xd];
                  if (ppppppuVar21 != (uint ******)0x0) {
                    ppppppuVar17 = (uint ******)ppppppuVar21[2];
                    ppppppuVar13 = ppppppuVar21 + 1;
                    if ((uint ******)ppppppuVar21[2] != (uint ******)0x0) {
                      do {
                        while (ppppppuVar20 = ppppppuVar17, local_f0 <= ppppppuVar20[4]) {
                          ppppppuVar17 = (uint ******)ppppppuVar20[2];
                          ppppppuVar13 = ppppppuVar20;
                          if ((uint ******)ppppppuVar20[2] == (uint ******)0x0) goto LAB_000a260d;
                        }
                        ppppppuVar1 = ppppppuVar20 + 3;
                        ppppppuVar17 = (uint ******)*ppppppuVar1;
                        ppppppuVar20 = ppppppuVar13;
                      } while ((uint ******)*ppppppuVar1 != (uint ******)0x0);
LAB_000a260d:
                      if ((ppppppuVar21 + 1 != ppppppuVar20) && (ppppppuVar20[4] <= local_f0)) {
                        local_154 = (uint *******)ppppppuVar20[5];
                        local_150 = (uint ******)0x0;
                      }
                    }
                  }
                  *(uint *******)(puVar26 + -0xc) = local_150;
                  *(uint ********)(puVar26 + -0x10) = local_154;
                  *(uint ********)(puVar26 + -0x14) = local_12c;
                  *(uint ********)(puVar26 + -0x18) = local_f0;
                  *(uint ********)(puVar26 + -0x1c) = param_1;
                  *(int *)(puVar26 + -0x20) = iVar19;
                  *(undefined4 *)(puVar26 + -0x24) = 0xa263f;
                  FUN_00067350();
                  pppppppuVar29 = extraout_ECX_01;
                  pppppppuVar22 = pppppppuVar27;
                }
                goto LAB_000a22b0;
              }
              *(uint ********)(puVar26 + -8) = pppppppuVar29;
              *(int *)(puVar26 + -0xc) = param_3;
              *(uint ********)(puVar26 + -0x10) = param_1;
                    /* try { // try from 000a326a to 000a326e has its CatchHandler @ 000a46b9 */
              *(undefined4 *)(puVar26 + -0x14) = 0xa326f;
              FUN_0009a280();
              pppppppuVar22 = (uint *******)((uint)local_f0 >> 5);
              puVar2 = (uint *)((int)local_b0 + (int)pppppppuVar22 * 4);
              *puVar2 = *puVar2 | 1 << ((byte)local_f0 & 0x1f);
              pppppppuVar29 = local_f0;
              pppppppuVar27 = local_f0;
            }
            else {
              local_154 = local_f0;
              *(uint ****)(puVar26 + -0xc) = pppuVar4;
              *(uint ********)(puVar26 + -0x10) = local_12c;
              *(undefined4 *)(puVar26 + -0x14) = 0xa24ed;
              iVar19 = strcmp(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));
              bVar33 = iVar19 == 0;
              pppppppuVar29 = local_154;
              if (!bVar33) goto LAB_000a2b98;
LAB_000a24fe:
              puVar2 = (uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4);
              *puVar2 = *puVar2 | 1 << ((byte)pppppppuVar29 & 0x1f);
              bVar33 = local_124 == (uint *******)0x7;
              if (bVar33) goto LAB_000a2bcb;
LAB_000a2522:
              bVar33 = (1 << ((byte)pppppppuVar29 & 0x1f) &
                       *(uint *)((int)local_b0 + ((uint)pppppppuVar29 >> 5) * 4)) != 0;
              pppppppuVar22 = (uint *******)CONCAT31((uint3)((uint)pppppppuVar29 >> 0xd),bVar33);
              if (!bVar33) {
                pppppppuVar22 = (uint *******)0x0;
                pppppppuVar27 = pppppppuVar29;
                if (local_124 != (uint *******)0x11) goto LAB_000a2551;
                *(void ***)(puVar26 + -0x10) = &local_b0;
                *(uint *******)(puVar26 + -0x14) = local_148;
                *(uint *******)(puVar26 + -0x18) = local_144;
                *(uint *******)(puVar26 + -0x1c) = local_160;
                *(uint ********)(puVar26 + -0x20) = local_12c;
                *(uint ********)(puVar26 + -0x24) = pppppppuVar29;
                *(int *)(puVar26 + -0x28) = param_3;
                *(int *)(puVar26 + -0x2c) = param_2;
                *(uint ********)(puVar26 + -0x30) = param_1;
                    /* try { // try from 000a336c to 000a3370 has its CatchHandler @ 000a46b9 */
                *(undefined4 *)(puVar26 + -0x34) = 0xa3371;
                cVar7 = FUN_0009e290();
                pppppppuVar29 = extraout_ECX_10;
                pppppppuVar27 = local_f0;
                if (cVar7 == '\0') goto LAB_000a2c3a;
                pppppppuVar22 = (uint *******)0x0;
                goto LAB_000a2583;
              }
LAB_000a2c18:
              iVar19 = *(int *)(param_3 + 0x1d0);
              pppppppuVar27 = pppppppuVar29;
              if (iVar19 == 0) {
                if ((char)pppppppuVar22 == '\0') goto LAB_000a22b0;
              }
              else if ((char)pppppppuVar22 == '\0') goto LAB_000a259c;
            }
LAB_000a2c3a:
            local_f0 = pppppppuVar27;
            param_1[0xe][(int)local_f0] = (uint *****)0x0;
            ppppppuVar21 = param_1[0x21];
            ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;
            ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;
            puVar24 = puVar26;
          }
          else {
LAB_000a22b0:
            puVar24 = puVar26;
            if (local_136 != '\0') {
              if ((*local_13c)[2] == (uint *****)0x0) {
                *(uint ********)(puVar26 + -8) = local_120 + -0x371c1;
                *(undefined4 *)(puVar26 + -0xc) = 0x5c;
                *(uint ********)(puVar26 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                *(undefined4 *)(puVar26 + -0x14) = 0xa42f6;
                FUN_0005f0b0();
              }
              if (*(char *)((int)(*local_13c)[2] + 0x18b1) != '\0') {
                *(uint ********)(puVar26 + -0xc) = local_12c;
                *(uint ********)(puVar26 + -0x10) = param_1;
                *(undefined4 *)(puVar26 + -0x14) = 0xa22ee;
                cVar7 = FUN_00091d10();
                if (cVar7 == '\0') {
                  *(uint ********)(puVar26 + -8) = local_12c;
                  *(uint ********)(puVar26 + -0xc) = param_1;
                  *(int *)(puVar26 + -0x10) = param_3;
                    /* try { // try from 000a230e to 000a277e has its CatchHandler @ 000a46b9 */
                  *(undefined4 *)(puVar26 + -0x14) = 0xa2313;
                  cVar7 = FUN_0007b5f0();
                  if ((cVar7 != '\0') || ((byte *)((int)local_124 + -0xe) < (byte *)0x2))
                  goto LAB_000a2c68;
                }
                else {
LAB_000a2c68:
                  local_84 = param_1;
                  local_80 = local_f0;
                  *(uint *********)(puVar26 + -0xc) = &local_84;
                  *(undefined4 *)(puVar26 + -0x10) = *(undefined4 *)(param_2 + 0x158);
                    /* try { // try from 000a2c87 to 000a3088 has its CatchHandler @ 000a46b9 */
                  *(undefined4 *)(puVar26 + -0x14) = 0xa2c8c;
                  FUN_000a0800();
                }
                pppppppuVar22 = local_120;
                pppppppuVar27 = local_12c;
                *(uint ********)(puVar26 + -0xc) = local_120 + -0x379ae;
                *(uint ********)(puVar26 + -0x10) = local_12c;
                *(undefined4 *)(puVar26 + -0x14) = 0xa234c;
                sVar9 = strspn(*(char **)(puVar26 + -0x10),*(char **)(puVar26 + -0xc));
                pppppppuVar28 = local_12c;
                pppppppuVar29 = extraout_ECX;
                if (*(byte *)((int)pppppppuVar27 + sVar9) == 0) {
                  local_178 = (uint *******)&local_84;
                  iVar19 = *(int *)(param_2 + 0x158);
                  *(uint ********)(puVar26 + -0x10) = local_12c;
                  local_194 = local_7c;
                  local_19c = iVar19;
                  local_184 = local_f0;
                  local_84 = local_7c;
                  *(undefined4 *)(puVar26 + -0x14) = 0xa3075;
                  sVar9 = strlen(*(char **)(puVar26 + -0x10));
                  *(undefined4 *)(puVar26 + -4) = 0;
                  *(byte **)(puVar26 + -8) = (byte *)(sVar9 + (int)pppppppuVar28);
                  *(uint ********)(puVar26 + -0xc) = pppppppuVar28;
                  *(uint ********)(puVar26 + -0x10) = local_178;
                  *(undefined4 *)(puVar26 + -0x14) = 0xa3089;
                  FUN_0004cf80();
                  pppppppuVar22 = *(uint ********)(iVar19 + 0x4c);
                  local_98 = local_184;
                  pppppppuVar27 = (uint *******)(iVar19 + 0x48);
                  local_9c = param_1;
                  local_18c = pppppppuVar27;
                  if (pppppppuVar22 == (uint *******)0x0) {
LAB_000a320c:
                    *(undefined1 **)(puVar26 + -0xc) = &local_f1;
                    *(uint *********)(puVar26 + -0x10) = &local_e8;
                    *(uint ********)(puVar26 + -0x14) = local_120 + -0x371b5;
                    local_e8 = local_178;
                    *(uint ********)(puVar26 + -0x18) = pppppppuVar27;
                    *(int *)(puVar26 + -0x1c) = local_19c + 0x44;
                    *(uint *********)(puVar26 + -0x20) = local_100;
                    /* try { // try from 000a3248 to 000a324c has its CatchHandler @ 000a46c0 */
                    *(undefined4 *)(puVar26 + -0x24) = 0xa324d;
                    FUN_000a0360();
                    puVar26 = puVar26 + -4;
                    pppppppuVar27 = local_100[0];
                  }
                  else {
                    local_170 = local_84;
                    local_174 = pppppppuVar27;
                    local_154 = local_80;
LAB_000a30e5:
                    do {
                      pppppppuVar29 = (uint *******)pppppppuVar22[5];
                      pppppppuVar27 = local_154;
                      if (pppppppuVar29 <= local_154) {
                        pppppppuVar27 = pppppppuVar29;
                      }
                      if (pppppppuVar27 == (uint *******)0x0) {
LAB_000a3116:
                        iVar19 = (int)pppppppuVar29 - (int)local_154;
                      }
                      else {
                        *(uint ********)(puVar26 + -8) = pppppppuVar27;
                        *(uint ********)(puVar26 + -0xc) = local_170;
                        *(uint *******)(puVar26 + -0x10) = pppppppuVar22[4];
                        *(undefined4 *)(puVar26 + -0x14) = 0xa310f;
                        iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),
                                        *(size_t *)(puVar26 + -8));
                        if (iVar19 == 0) goto LAB_000a3116;
                      }
                      if (-1 < iVar19) {
                        local_174 = pppppppuVar22;
                        pppppppuVar22 = (uint *******)pppppppuVar22[2];
                        if (pppppppuVar22 == (uint *******)0x0) break;
                        goto LAB_000a30e5;
                      }
                      pppppppuVar22 = (uint *******)pppppppuVar22[3];
                    } while (pppppppuVar22 != (uint *******)0x0);
                    pppppppuVar27 = local_174;
                    if (local_18c == local_174) goto LAB_000a320c;
                    pppppppuVar22 = (uint *******)local_174[5];
                    pppppppuVar29 = pppppppuVar22;
                    if (local_154 <= pppppppuVar22) {
                      pppppppuVar29 = local_154;
                    }
                    if (pppppppuVar29 == (uint *******)0x0) {
LAB_000a3174:
                      iVar19 = (int)local_154 - (int)pppppppuVar22;
                    }
                    else {
                      *(uint ********)(puVar26 + -8) = pppppppuVar29;
                      *(uint *******)(puVar26 + -0xc) = local_174[4];
                      *(uint ********)(puVar26 + -0x10) = local_170;
                      *(undefined4 *)(puVar26 + -0x14) = 0xa3167;
                      iVar19 = memcmp(*(void **)(puVar26 + -0x10),*(void **)(puVar26 + -0xc),
                                      *(size_t *)(puVar26 + -8));
                      if (iVar19 == 0) goto LAB_000a3174;
                    }
                    if (iVar19 < 0) goto LAB_000a320c;
                  }
                  local_154 = (uint *******)((uint)local_184 ^ (uint)param_1);
                  pppppppuVar22 = pppppppuVar27 + 10;
                  local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);
                  *(uint ********)(puVar26 + -4) = local_154;
                  *(uint *********)(puVar26 + -8) = &local_9c;
                  *(uint ********)(puVar26 + -0xc) = local_170;
                  *(uint ********)(puVar26 + -0x10) = pppppppuVar22;
                  *(undefined4 *)(puVar26 + -0x14) = 0xa31b4;
                  local_174 = pppppppuVar22;
                  piVar11 = (int *)FUN_0008bfc0();
                  if ((piVar11 == (int *)0x0) || (pppppppuVar29 = extraout_ECX_07, *piVar11 == 0)) {
                    *(undefined4 *)(puVar26 + -0x10) = 0x10;
                    /* try { // try from 000a32a3 to 000a32ea has its CatchHandler @ 000a46c0 */
                    *(undefined4 *)(puVar26 + -0x14) = 0xa32a8;
                    ppppppuVar21 = (uint ******)FUN_0017ebf0();
                    *ppppppuVar21 = (uint *****)0x0;
                    ppppppuVar21[1] = (uint *****)param_1;
                    ppppppuVar21[2] = (uint *****)local_184;
                    local_e4 = pppppppuVar27[0xf];
                    *(undefined4 *)(puVar26 + -0x10) = 1;
                    *(uint *******)(puVar26 + -0x14) = pppppppuVar27[0xd];
                    *(uint *******)(puVar26 + -0x18) = pppppppuVar27[0xb];
                    *(uint ********)(puVar26 + -0x1c) = pppppppuVar27 + 0xe;
                    *(char **)(puVar26 + -0x20) = local_10c;
                    *(undefined4 *)(puVar26 + -0x24) = 0xa32eb;
                    FUN_001c5e50();
                    pppppppuVar29 = extraout_ECX_09;
                    if (local_10c[0] != '\0') {
                      *(uint ********)(puVar26 + -0xc) = &local_e4;
                      *(undefined4 *)(puVar26 + -0x10) = local_108;
                      *(uint ********)(puVar26 + -0x14) = local_174;
                    /* try { // try from 000a3691 to 000a3695 has its CatchHandler @ 000a4673 */
                      *(undefined4 *)(puVar26 + -0x18) = 0xa3696;
                      FUN_0008f5f0();
                      local_170 = (uint *******)((uint)local_154 % (uint)pppppppuVar27[0xb]);
                      pppppppuVar29 = extraout_ECX_12;
                    }
                    puVar26 = puVar26 + -4;
                    ppppppuVar21[3] = (uint *****)local_154;
                    pppppppuVar22 = (uint *******)((int)local_170 * 4);
                    if (pppppppuVar27[10][(int)local_170] == (uint *****)0x0) {
                      *ppppppuVar21 = (uint *****)pppppppuVar27[0xc];
                      pppppppuVar29 = (uint *******)pppppppuVar27[10];
                      pppppppuVar27[0xc] = ppppppuVar21;
                      if (*ppppppuVar21 != (uint *****)0x0) {
                        pppppppuVar29[(uint)(*ppppppuVar21)[3] % (uint)pppppppuVar27[0xb]] =
                             ppppppuVar21;
                      }
                      pppppppuVar29[(int)local_170] = (uint ******)(pppppppuVar27 + 0xc);
                    }
                    else {
                      *ppppppuVar21 = (uint *****)*pppppppuVar27[10][(int)local_170];
                      *pppppppuVar27[10][(int)local_170] = (uint ****)ppppppuVar21;
                    }
                    pppppppuVar27[0xd] = (uint ******)((int)pppppppuVar27[0xd] + 1);
                  }
                  pppppppuVar27 = local_120;
                  puVar24 = puVar26;
                  if (local_84 != local_194) {
                    *(uint ********)(puVar26 + -0x10) = local_84;
                    *(undefined4 *)(puVar26 + -0x14) = 0xa31e7;
                    FUN_001807a0();
                    pppppppuVar29 = extraout_ECX_08;
                    pppppppuVar22 = pppppppuVar27;
                  }
                }
              }
            }
            if (((char)local_14c == '\0') ||
               ((local_124 != (uint *******)0x9 && (local_124 != (uint *******)0x4)))) {
              if ((local_124 != (uint *******)0x11) || ((char)local_140 == '\0')) {
                local_154 = (uint *******)&local_ec;
                *(uint ********)(puVar24 + -0xc) = local_154;
                *(uint ********)(puVar24 + -0x10) = param_1;
                    /* try { // try from 000a29c3 to 000a2a5e has its CatchHandler @ 000a46b9 */
                *(undefined4 *)(puVar24 + -0x14) = 0xa29c8;
                cVar7 = FUN_000964f0();
                pppppppuVar27 = local_f0;
                bVar33 = false;
                bVar35 = cVar7 == '\0';
                pppppppuVar29 = extraout_ECX_03;
                if (!bVar35) {
                  pppppppuVar29 = (uint *******)0xa;
                  pppppppuVar28 = local_12c;
                  pbVar31 = (byte *)((int)local_120 + -0xdef3a);
                  do {
                    if (pppppppuVar29 == (uint *******)0x0) break;
                    pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                    bVar33 = *(byte *)pppppppuVar28 < *pbVar31;
                    bVar35 = *(byte *)pppppppuVar28 == *pbVar31;
                    pppppppuVar28 = (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                    pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                  } while (bVar35);
                  if ((!bVar33 && !bVar35) == bVar33) {
                    if ((char)local_140 == '\0') {
                      if (local_136 == '\0') {
                        if (*(byte *)((int)param_1 + 0x11d) == 0) {
                          if (local_d0 == local_cc) {
                            *(uint *********)(puVar24 + -8) = &local_f0;
                            *(int **)(puVar24 + -0xc) = local_d0;
                            puVar25 = puVar24 + -0x10;
                            *(int ***)(puVar24 + -0x10) = &local_d4;
                    /* try { // try from 000a4269 to 000a42a1 has its CatchHandler @ 000a46b9 */
                            *(undefined4 *)(puVar24 + -0x14) = 0xa426e;
                            FUN_00047200();
                            pppppppuVar29 = extraout_ECX_29;
                            goto LAB_000a3e57;
                          }
                          *local_d0 = (int)local_f0;
                          local_d0 = local_d0 + 1;
                        }
                        else {
                          pppppppuVar22 = (uint *******)local_15c[(int)local_f0];
                          local_124 = param_1 + 0x48;
                          uVar12 = local_158[(int)local_f0];
                          local_178 = (uint *******)&local_84;
                          *(undefined4 *)(puVar24 + -4) = 0xa2a5f;
                          FUN_000926b0();
                          local_6c = pppppppuVar27;
                          local_60 = *local_134;
                          local_58 = local_134[2];
                          local_54 = local_134[3];
                          local_50 = local_134[4];
                          local_4c = local_134[5];
                          local_48 = local_134[6];
                          local_44 = local_134[7];
                          local_40 = local_134[8];
                          local_3c = local_134[9];
                          local_38 = local_134[10];
                          local_34 = local_134[0xb];
                          local_30 = local_134[0xc];
                          local_2c = local_134[0xd];
                          local_28 = local_134[0xe];
                          local_24 = local_134[0xf];
                          *(uint ********)(puVar24 + -0xc) = local_178;
                          *(uint ********)(puVar24 + -0x10) = local_124;
                          local_5c = local_198;
                    /* try { // try from 000a2ae5 to 000a2ae9 has its CatchHandler @ 000a4656 */
                          *(undefined4 *)(puVar24 + -0x14) = 0xa2aea;
                          local_68 = uVar12;
                          local_64 = pppppppuVar22;
                          FUN_000a10f0();
                          pppppppuVar28 = local_120;
                          pppppppuVar29 = extraout_ECX_04;
                          pppppppuVar22 = pppppppuVar27;
                          if (local_84 != local_7c) {
                            *(uint ********)(puVar24 + -0x10) = local_84;
                            *(undefined4 *)(puVar24 + -0x14) = 0xa2b0a;
                            FUN_001807a0();
                            pppppppuVar29 = extraout_ECX_05;
                            pppppppuVar22 = pppppppuVar28;
                          }
                        }
                      }
                      else {
                        param_1[0xe][(int)local_f0] =
                             (uint *****)((*(byte *)((int)param_1 + 0x11d) != 0) + 1);
                        ppppppuVar21 = param_1[0x21];
                        ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;
                        ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;
                      }
                      goto LAB_000a23a1;
                    }
                    local_124 = local_198;
                  }
                }
                puVar23 = puVar24;
                if (local_135 == '\0') {
                  iVar19 = (int)local_f0 * 4;
                  if ((*(byte *)((int)param_1 + 0x11d) == 0) || (((uint)local_ec[2] & 2) == 0)) {
                    if (local_136 == '\0') goto LAB_000a2d10;
LAB_000a2b6b:
                    *(undefined4 *)((int)param_1[0xe] + iVar19) = 1;
                    ppppppuVar21 = param_1[0x21];
                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;
                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;
                    puVar24 = puVar23;
                  }
                  else {
                    local_170 = (uint *******)local_15c[(int)local_f0];
                    uVar12 = local_158[(int)local_f0];
                    local_154 = param_1 + 0x48;
                    *(undefined4 *)(puVar24 + -4) = 0xa3ea6;
                    FUN_000926b0();
                    pppppppuVar22 = local_124;
                    local_6c = pppppppuVar27;
                    local_64 = local_170;
                    local_60 = *local_134;
                    local_58 = local_134[2];
                    local_54 = local_134[3];
                    local_50 = local_134[4];
                    local_4c = local_134[5];
                    local_48 = local_134[6];
                    local_44 = local_134[7];
                    local_40 = local_134[8];
                    local_3c = local_134[9];
                    local_38 = local_134[10];
                    local_34 = local_134[0xb];
                    local_30 = local_134[0xc];
                    local_2c = local_134[0xd];
                    local_28 = local_134[0xe];
                    local_24 = local_134[0xf];
                    *(uint *********)(puVar24 + -0xc) = &local_84;
                    *(uint ********)(puVar24 + -0x10) = local_154;
                    local_5c = local_124;
                    /* try { // try from 000a3f2d to 000a3f31 has its CatchHandler @ 000a4530 */
                    *(undefined4 *)(puVar24 + -0x14) = 0xa3f32;
                    local_68 = uVar12;
                    FUN_000a10f0();
                    pppppppuVar27 = local_120;
                    pppppppuVar29 = extraout_ECX_22;
                    if (local_84 != local_7c) {
                      *(uint ********)(puVar24 + -0x10) = local_84;
                      *(undefined4 *)(puVar24 + -0x14) = 0xa3f4e;
                      FUN_001807a0();
                      pppppppuVar29 = extraout_ECX_23;
                      pppppppuVar22 = pppppppuVar27;
                    }
                    param_1[0xe][(int)local_f0] = (uint *****)0x2;
                    ppppppuVar21 = param_1[0x21];
                    ppppppuVar21[(int)local_f0 * 2] = (uint *****)0xffffffff;
                    ppppppuVar21[(int)local_f0 * 2 + 1] = (uint *****)0xffffffff;
                  }
                }
                else {
                  pppppuVar15 = (*local_13c)[2];
                  if (pppppuVar15 == (uint *****)0x0) {
                    *(uint ********)(puVar24 + -4) = pppppppuVar22;
                    *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;
                    *(undefined4 *)(puVar24 + -0xc) = 0x5c;
                    *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    *(undefined4 *)(puVar24 + -0x14) = 0xa4330;
                    FUN_0005f0b0();
                  }
                  iVar19 = (int)local_f0 * 4;
                  pppppuVar18 = param_1[0xe][(int)local_f0];
                  pppppppuVar29 = param_1;
                  if (*(char *)((int)pppppuVar15 + 0x18b1) == '\0') {
LAB_000a2f0d:
                    if (pppppuVar15[0x164d] != (uint ****)0x0) {
                      if (pppppuVar18 == (uint *****)0x0) {
                        uVar10 = (uint)param_1[0x21][(int)local_f0 * 2 + 1] &
                                 (uint)param_1[0x21][(int)local_f0 * 2];
                        pppppppuVar29 = local_ec;
                        puVar24 = puVar23;
                        if (uVar10 != 0xffffffff) {
                          *(uint *)(puVar23 + -4) = uVar10;
                          *(uint ********)(puVar23 + -8) = local_120 + -0x373b3;
                          *(undefined4 *)(puVar23 + -0xc) = 0x6f9;
                          *(uint ********)(puVar23 + -0x10) = local_120 + -0x375d2;
                    /* WARNING: Subroutine does not return */
                          *(undefined **)(puVar23 + -0x14) = &UNK_000a2f61;
                          FUN_0005f0b0();
                        }
                        goto LAB_000a23a1;
                      }
LAB_000a2cf0:
                      pppppppuVar27 = local_120;
                      pppppppuVar29 = local_ec;
                      if (((uint)local_ec[2] & 2) != 0) {
                        *(uint ********)(puVar23 + -8) = local_f0;
                        *(uint ********)(puVar23 + -0xc) = param_1;
                        *(undefined4 *)(puVar23 + -0x10) = *(undefined4 *)(param_2 + 0x15c);
                        *(undefined4 *)(puVar23 + -0x14) = 0xa3ddb;
                        cVar7 = FUN_00062560();
                        pppppppuVar22 = pppppppuVar27;
                        if (cVar7 != '\0') {
                          if ((*local_13c)[2] == (uint *****)0x0) {
                            *(int *)(puVar23 + -4) = iVar19;
                            *(uint ********)(puVar23 + -8) = local_120 + -0x371c1;
                            *(undefined4 *)(puVar23 + -0xc) = 0x5c;
                            *(uint ********)(puVar23 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a44a4 to 000a4524 has its CatchHandler @ 000a46b9 */
                            *(undefined4 *)(puVar23 + -0x14) = 0xa44a9;
                            FUN_0005f0b0();
                          }
                          pppppppuVar29 = extraout_ECX_20;
                          puVar26 = puVar23;
                          pppppppuVar27 = local_f0;
                          if (*(char *)((int)(*local_13c)[2] + 0x2ed1) != '\0') {
                            *(uint ********)(puVar23 + -4) = local_f0;
                            *(uint ********)(puVar23 + -8) = param_1;
                            *(undefined4 *)(puVar23 + -0xc) = *(undefined4 *)(param_2 + 0x15c);
                            *(int ***)(puVar23 + -0x10) = &local_11c;
                    /* try { // try from 000a407c to 000a409d has its CatchHandler @ 000a46b9 */
                            *(undefined4 *)(puVar23 + -0x14) = 0xa4081;
                            FUN_000625c0();
                            iVar19 = *local_11c;
                            iVar5 = local_11c[1];
                            *(undefined4 *)(puVar23 + -0xc) = local_118;
                            *(int **)(puVar23 + -0x10) = local_11c;
                            *(uint *********)(puVar23 + -0x14) = &local_84;
                            pcVar6 = *(code **)(iVar19 + 0x40);
                            *(undefined4 *)(puVar23 + -0x18) = 0xa409e;
                            (*pcVar6)();
                            pppppppuVar29 = local_84;
                            local_12c = (uint *******)param_1[1];
                            pppppppuVar22 = (uint *******)(*param_1)[0x10];
                            if (pppppppuVar22 == local_120 + -0x99678) {
                              *(uint ********)(puVar23 + -0x10) = local_f0;
                              *(uint ********)(puVar23 + -0x14) = param_1 + 0x24;
                              *(uint *********)(puVar23 + -0x18) = &local_9c;
                    /* try { // try from 000a40e7 to 000a40eb has its CatchHandler @ 000a465d */
                              *(undefined4 *)(puVar23 + -0x1c) = 0xa40ec;
                              FUN_0004e830();
                            }
                            else {
                              *(uint ********)(puVar23 + -0x10) = local_f0;
                              *(uint ********)(puVar23 + -0x14) = param_1;
                              *(uint *********)(puVar23 + -0x18) = &local_9c;
                    /* try { // try from 000a42b5 to 000a42b6 has its CatchHandler @ 000a465d */
                              *(undefined4 *)(puVar23 + -0x1c) = 0xa42b7;
                              (*(code *)pppppppuVar22)();
                            }
                            local_154 = local_9c;
                            local_124 = (uint *******)*local_1a0;
                            *(uint ********)(puVar23 + -0x1c) = local_120 + -0x3746d;
                            *(undefined4 *)(puVar23 + -0x20) = 0xa4120;
                            uVar12 = gettext();
                            pppppppuVar22 = local_120;
                            *(int *)(puVar23 + -0x18) = iVar5;
                            *(uint ********)(puVar23 + -0x1c) = pppppppuVar29;
                            *(uint ********)(puVar23 + -0x20) = local_12c;
                            *(uint ********)(puVar23 + -0x24) = local_154;
                            *(uint ********)(puVar23 + -0x28) = local_124;
                            *(undefined4 *)(puVar23 + -0x2c) = uVar12;
                    /* try { // try from 000a4141 to 000a4145 has its CatchHandler @ 000a464f */
                            *(undefined4 *)(puVar23 + -0x30) = 0xa4146;
                            FUN_0005ad60();
                            pppppppuVar29 = extraout_ECX_24;
                            if (local_9c != local_94) {
                              *(uint ********)(puVar23 + -0x1c) = local_9c;
                              *(undefined4 *)(puVar23 + -0x20) = 0xa4162;
                              FUN_001807a0();
                              pppppppuVar29 = extraout_ECX_25;
                            }
                            pppppppuVar28 = local_120;
                            puVar26 = puVar23 + -0xc;
                            pppppppuVar27 = local_f0;
                            if (local_84 != local_7c) {
                              *(uint ********)(puVar23 + -0x1c) = local_84;
                              *(undefined4 *)(puVar23 + -0x20) = 0xa417e;
                              FUN_001807a0();
                              puVar26 = puVar23 + -0xc;
                              pppppppuVar29 = extraout_ECX_26;
                              pppppppuVar22 = pppppppuVar28;
                              pppppppuVar27 = local_f0;
                            }
                          }
                          goto LAB_000a2c3a;
                        }
                        iVar19 = (int)local_f0 * 4;
                        pppppuVar18 = param_1[0xe][(int)local_f0];
                        pppppppuVar29 = extraout_ECX_20;
                      }
                    }
                  }
                  else {
                    if (pppppuVar18 == (uint *****)0x0) {
                      if (((uint)param_1[0x21][(int)local_f0 * 2 + 1] &
                          (uint)param_1[0x21][(int)local_f0 * 2]) != 0xffffffff) {
                        *(uint ********)(puVar24 + -4) = param_1;
                        *(uint ********)(puVar24 + -8) = local_120 + -0x373b3;
                        *(undefined4 *)(puVar24 + -0xc) = 0x6e4;
                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x375d2;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a3428 to 000a342c has its CatchHandler @ 000a46b9 */
                        *(undefined **)(puVar24 + -0x14) = &UNK_000a342d;
                        FUN_0005f0b0();
                      }
                      goto LAB_000a23a1;
                    }
                    if (((uint)local_ec[2] & 2) != 0) {
                      local_80 = local_f0;
                      local_170 = *(uint ********)(param_2 + 0x158);
                      local_84 = param_1;
                      local_178 = (uint *******)&local_84;
                      *(uint ********)(puVar24 + -8) = local_178;
                      *(uint ********)(puVar24 + -0xc) = local_170 + 10;
                      *(int **)(puVar24 + -0x10) = &local_110;
                      *(undefined4 *)(puVar24 + -0x14) = 0xa2ed3;
                      FUN_00065700();
                      puVar26 = puVar24 + -4;
                      puVar23 = puVar24 + -4;
                      pppppuVar15 = (*local_13c)[2];
                      if (local_110 == 0) {
                        if (pppppuVar15 == (uint *****)0x0) {
                          *(undefined4 *)(puVar24 + -8) = 0;
                          *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;
                          *(undefined4 *)(puVar24 + -0x10) = 0x5c;
                          *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43a2 to 000a43a6 has its CatchHandler @ 000a46b9 */
                          *(undefined4 *)(puVar24 + -0x18) = 0xa43a7;
                          FUN_0005f0b0();
                        }
                        pppppppuVar29 = extraout_ECX_06;
                        pppppppuVar27 = local_f0;
                        if (*(char *)((int)pppppuVar15 + 0x2e55) != '\0') {
                          ppppppuVar21 = param_1[1];
                          pppppppuVar22 = (uint *******)(*param_1)[0x10];
                          if (pppppppuVar22 == local_120 + -0x99678) {
                            *(uint ********)(puVar24 + -0xc) = local_f0;
                            *(uint ********)(puVar24 + -0x10) = param_1 + 0x24;
                            *(uint ********)(puVar24 + -0x14) = local_178;
                    /* try { // try from 000a3904 to 000a3908 has its CatchHandler @ 000a46b9 */
                            *(undefined4 *)(puVar24 + -0x18) = 0xa3909;
                            FUN_0004e830();
                          }
                          else {
                            *(uint ********)(puVar24 + -0xc) = local_f0;
                            *(uint ********)(puVar24 + -0x10) = param_1;
                            *(uint ********)(puVar24 + -0x14) = local_178;
                            *(undefined4 *)(puVar24 + -0x18) = 0xa42a2;
                            (*(code *)pppppppuVar22)();
                          }
                          local_12c = local_84;
                          ppppppuVar17 = *local_1a4;
                          *(uint ********)(puVar24 + -0x18) = local_120 + -0x3747a;
                          *(undefined4 *)(puVar24 + -0x1c) = 0xa3934;
                          uVar12 = gettext();
                          pppppppuVar22 = local_120;
                          *(uint *******)(puVar24 + -0xc) = ppppppuVar21;
                          *(uint ********)(puVar24 + -0x10) = local_12c;
                          *(uint *******)(puVar24 + -0x14) = ppppppuVar17;
                          *(undefined4 *)(puVar24 + -0x18) = uVar12;
                    /* try { // try from 000a3949 to 000a394d has its CatchHandler @ 000a4668 */
                          *(undefined4 *)(puVar24 + -0x1c) = 0xa394e;
                          FUN_0005ad60();
                          puVar26 = puVar24 + -8;
                          pppppppuVar29 = extraout_ECX_14;
                          pppppppuVar27 = local_f0;
                          if (local_84 != local_7c) {
                            *(uint ********)(puVar24 + -0x18) = local_84;
                            *(undefined4 *)(puVar24 + -0x1c) = 0xa3968;
                            FUN_001807a0();
                            puVar26 = puVar24 + -8;
                            pppppppuVar29 = extraout_ECX_15;
                            pppppppuVar27 = local_f0;
                          }
                        }
                        goto LAB_000a2c3a;
                      }
                      if (pppppuVar15 == (uint *****)0x0) {
                        *(undefined4 *)(puVar24 + -8) = 0;
                        *(uint ********)(puVar24 + -0xc) = local_120 + -0x371c1;
                        *(undefined4 *)(puVar24 + -0x10) = 0x5c;
                        *(uint ********)(puVar24 + -0x14) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                        *(undefined4 *)(puVar24 + -0x18) = 0xa434c;
                        FUN_0005f0b0();
                      }
                      iVar19 = (int)local_f0 * 4;
                      pppppuVar18 = param_1[0xe][(int)local_f0];
                      pppppppuVar29 = extraout_ECX_06;
                      pppppppuVar22 = param_1;
                      goto LAB_000a2f0d;
                    }
                    pppppppuVar29 = local_ec;
                    if (pppppuVar15[0x164d] != (uint ****)0x0) goto LAB_000a2cf0;
                  }
                  puVar24 = puVar23;
                  if (pppppuVar18 != (uint *****)0x2) {
                    if (local_136 != '\0') goto LAB_000a2b6b;
LAB_000a2d10:
                    pppppppuVar29 = local_f0;
                    local_170 = *(uint ********)((int)local_158 + iVar19);
                    *(uint *********)(puVar24 + -0x10) = &local_84;
                    *(undefined4 *)(puVar24 + -0x14) = *(undefined4 *)((int)local_15c + iVar19);
                    *(uint ********)(puVar24 + -0x18) = local_170;
                    *(uint ********)(puVar24 + -0x1c) = local_124;
                    *(uint ********)(puVar24 + -0x20) = local_154;
                    *(uint ********)(puVar24 + -0x24) = local_12c;
                    *(uint ********)(puVar24 + -0x28) = local_f0;
                    *(uint ********)(puVar24 + -0x2c) = param_1;
                    *(int *)(puVar24 + -0x30) = param_3;
                    *(undefined4 *)(puVar24 + -0x34) = 0xa2d54;
                    uVar12 = FUN_0008ff40();
                    pppppppuVar27 = local_120;
                    *(undefined4 *)((int)param_1[0xe] + iVar19) = uVar12;
                    pppppppuVar22 = (uint *******)((uint)local_80 & (uint)local_84);
                    ppppppuVar21 = param_1[0x21] + (int)pppppppuVar29 * 2;
                    if (pppppppuVar22 == (uint *******)0xffffffff) {
                      *ppppppuVar21 = (uint *****)0xffffffff;
                      ppppppuVar21[1] = (uint *****)0xffffffff;
                    }
                    else {
                      *ppppppuVar21 = (uint *****)local_84;
                      ppppppuVar21[1] = (uint *****)local_80;
                    }
                    if ((((uint)local_84 & (uint)local_80) == 0xffffffff) &&
                       (local_170 != (uint *******)0x0)) {
                      *(byte *)(param_1 + 0x13) = 1;
                    }
                    pppppppuVar29 = local_84;
                    if ((char)local_140 == '\0') {
                      if ((*local_13c)[2] == (uint *****)0x0) {
                        *(undefined4 *)(puVar24 + -4) = 0;
                        *(uint ********)(puVar24 + -8) = local_120 + -0x371c1;
                        *(undefined4 *)(puVar24 + -0xc) = 0x5c;
                        *(uint ********)(puVar24 + -0x10) = local_120 + -0x385a4;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000a43f6 to 000a43fa has its CatchHandler @ 000a46b9 */
                        *(undefined4 *)(puVar24 + -0x14) = 0xa43fb;
                        FUN_0005f0b0();
                      }
                      if (*(char *)((int)(*local_13c)[2] + 0x192d) != '\0') {
                        bVar33 = false;
                        bVar35 = ((uint)local_ec[2] & 2) == 0;
                        if (bVar35) {
                          pppppppuVar29 = (uint *******)0xc;
                          pppppppuVar28 = local_12c;
                          pbVar31 = (byte *)((int)local_120 + -0xe0537);
                          do {
                            if (pppppppuVar29 == (uint *******)0x0) break;
                            pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                            bVar33 = *(byte *)pppppppuVar28 < *pbVar31;
                            bVar35 = *(byte *)pppppppuVar28 == *pbVar31;
                            pppppppuVar28 =
                                 (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                            pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                          } while (bVar35);
                          bVar34 = false;
                          bVar33 = (!bVar33 && !bVar35) == bVar33;
                          if (!bVar33) {
                            pppppppuVar29 = (uint *******)0xd;
                            pppppppuVar28 = local_12c;
                            pbVar31 = (byte *)((int)local_120 + -0xdd155);
                            do {
                              if (pppppppuVar29 == (uint *******)0x0) break;
                              pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                              bVar34 = *(byte *)pppppppuVar28 < *pbVar31;
                              bVar33 = *(byte *)pppppppuVar28 == *pbVar31;
                              pppppppuVar28 =
                                   (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                              pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                            } while (bVar33);
                            bVar35 = false;
                            bVar33 = (!bVar34 && !bVar33) == bVar34;
                            if (!bVar33) {
                              pppppppuVar29 = (uint *******)0xd;
                              pppppppuVar22 = local_12c;
                              pbVar31 = (byte *)((int)local_120 + -0xe052b);
                              do {
                                if (pppppppuVar29 == (uint *******)0x0) break;
                                pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                                bVar35 = *(byte *)pppppppuVar22 < *pbVar31;
                                bVar33 = *(byte *)pppppppuVar22 == *pbVar31;
                                pppppppuVar22 =
                                     (uint *******)((int)pppppppuVar22 + (uint)bVar36 * -2 + 1);
                                pbVar31 = pbVar31 + (uint)bVar36 * -2 + 1;
                              } while (bVar33);
                              bVar34 = false;
                              bVar33 = (!bVar35 && !bVar33) == bVar35;
                              pppppppuVar22 = local_120;
                              if (!bVar33) {
                                pppppppuVar29 = (uint *******)0xe;
                                pppppppuVar28 = local_12c;
                                pppppppuVar32 = local_120 + -0x37452;
                                do {
                                  if (pppppppuVar29 == (uint *******)0x0) break;
                                  pppppppuVar29 = (uint *******)((int)pppppppuVar29 + -1);
                                  bVar34 = *(byte *)pppppppuVar28 < *(byte *)pppppppuVar32;
                                  bVar33 = *(byte *)pppppppuVar28 == *(byte *)pppppppuVar32;
                                  pppppppuVar28 =
                                       (uint *******)((int)pppppppuVar28 + (uint)bVar36 * -2 + 1);
                                  pppppppuVar32 =
                                       (uint *******)((int)pppppppuVar32 + (uint)bVar36 * -2 + 1);
                                } while (bVar33);
                                if ((!bVar34 && !bVar33) != bVar34) goto LAB_000a23a1;
                              }
                              if (local_b8 == local_b4) {
                                *(uint *********)(puVar24 + -8) = &local_f0;
                                *(int **)(puVar24 + -0xc) = local_b8;
                                puVar25 = puVar24 + -0x10;
                                *(int ***)(puVar24 + -0x10) = &local_bc;
                    /* try { // try from 000a42ce to 000a434b has its CatchHandler @ 000a46b9 */
                                *(undefined4 *)(puVar24 + -0x14) = 0xa42d3;
                                FUN_00047200();
                                pppppppuVar29 = extraout_ECX_31;
                                pppppppuVar22 = pppppppuVar27;
                                goto LAB_000a3e57;
                              }
                              *local_b8 = (int)local_f0;
                              local_b8 = local_b8 + 1;
                              goto LAB_000a23a1;
                            }
                          }
                          if (local_c4 == local_c0) {
                            *(uint *********)(puVar24 + -8) = &local_f0;
                            *(int **)(puVar24 + -0xc) = local_c4;
                            puVar25 = puVar24 + -0x10;
                            *(int ***)(puVar24 + -0x10) = &local_c8;
                            *(undefined4 *)(puVar24 + -0x14) = 0xa428a;
                            FUN_00047200();
                            pppppppuVar29 = extraout_ECX_30;
                            goto LAB_000a3e57;
                          }
                          *local_c4 = (int)local_f0;
                          local_c4 = local_c4 + 1;
                        }
                      }
                    }
                  }
                }
              }
            }
            else if (local_dc == local_d8) {
              *(uint *********)(puVar24 + -8) = &local_f0;
              *(uint ********)(puVar24 + -0xc) = local_dc;
              puVar25 = puVar24 + -0x10;
              *(uint *********)(puVar24 + -0x10) = &local_e0;
              *(undefined4 *)(puVar24 + -0x14) = 0xa3e57;
              FUN_00047200();
              pppppppuVar29 = extraout_ECX_21;
LAB_000a3e57:
              puVar24 = puVar25 + 0x10;
            }
            else {
              *local_dc = (uint ******)local_f0;
              local_dc = local_dc + 1;
            }
          }
LAB_000a23a1:
          pppppppuVar27 = (uint *******)((int)local_f0 + 1);
          pppppppuVar28 = local_134 + 0x10;
          local_f0 = pppppppuVar27;
          if (local_130 <= pppppppuVar27) goto LAB_000a2740;
          local_ec = pppppppuVar28;
          ppppppuVar21 = *pppppppuVar28;
          local_124 = (uint *******)local_134[0x11];
          puVar26 = puVar24;
          local_134 = pppppppuVar28;
        } while (ppppppuVar21 < local_148);
      }
      pppppppuVar22 = local_f0;
      local_ec = local_134;
      *(uint ********)(puVar26 + -0x10) = local_120 + -0x37485;
      *(undefined4 *)(puVar26 + -0x14) = 0xa3657;
      uVar12 = gettext();
      *(uint *******)(puVar26 + -4) = ppppppuVar21;
      *(uint ********)(puVar26 + -8) = pppppppuVar22;
      *(undefined4 *)(puVar26 + -0xc) = uVar12;
      *(uint ********)(puVar26 + -0x10) = param_1;
      *(undefined4 *)(puVar26 + -0x14) = 0xa3665;
      FUN_00091980();
      puVar24 = puVar26;
    }
    if (local_bc != (int *)0x0) {
      *(int **)(puVar24 + -0x10) = local_bc;
      *(undefined4 *)(puVar24 + -0x14) = 0xa28af;
      FUN_001807a0();
    }
    if (local_c8 != (int *)0x0) {
      *(int **)(puVar24 + -0x10) = local_c8;
      *(undefined4 *)(puVar24 + -0x14) = 0xa28cb;
      FUN_001807a0();
    }
    if (local_d4 != (int *)0x0) {
      *(int **)(puVar24 + -0x10) = local_d4;
      *(undefined4 *)(puVar24 + -0x14) = 0xa28e7;
      FUN_001807a0();
    }
    if (local_e0 != (uint *******)0x0) {
      *(uint ********)(puVar24 + -0x10) = local_e0;
      *(undefined4 *)(puVar24 + -0x14) = 0xa2903;
      FUN_001807a0();
    }
    if (local_b0 != (void *)0x0) {
      *(void **)(puVar24 + -0x10) = local_b0;
      *(undefined4 *)(puVar24 + -0x14) = 0xa291f;
      FUN_001807a0();
    }
  }
  else {
    puVar24 = auStack_1ac;
    if (local_135 == '\0') {
      iVar19 = *param_4;
      if (iVar19 != 0) {
        FUN_0005cea0(iVar19);
        FUN_00180780(iVar19,0xc);
      }
      iVar19 = param_4[1];
      *param_4 = 0;
      if (iVar19 != 0) {
        FUN_0005cea0(iVar19);
        FUN_00180780(iVar19,0xc);
      }
      param_4[1] = 0;
      puVar24 = auStack_1ac;
    }
  }
  *(undefined4 **)(puVar24 + -0x10) = local_15c;
  *(undefined4 *)(puVar24 + -0x14) = 0xa2938;
  FUN_001807a0();
  *(undefined4 **)(puVar24 + -0x10) = local_158;
  *(undefined4 *)(puVar24 + -0x14) = 0xa2944;
  FUN_001807a0();
  return;
}

